working test

This commit is contained in:
HeshamTB 2018-09-18 10:25:01 +03:00
parent 1bc99a7ec7
commit 3b2b5b8c45

View File

@ -7,14 +7,99 @@ using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows.Forms; using System.Windows.Forms;
using System.IO;
using Emgu.CV;
using Emgu.CV.CvEnum;
using Emgu.CV.Structure;
using Emgu.CV.UI;
using Emgu.Util;
using Emgu.CV.Face;
namespace FaceRecognizer namespace FaceRecognizer
{ {
public partial class MainForm : Form public partial class MainForm : Form
{ {
LBPHFaceRecognizer reconizer;
CascadeClassifier faceCascade;
Image<Gray, byte> temp;
List<Image<Gray, byte>> imageList = new List<Image<Gray, byte>>();
List<string> imageLabels = new List<string>();
List<int> imageIndicies = new List<int>();
Rectangle[] detectedFaces;
public MainForm() public MainForm()
{ {
InitializeComponent(); InitializeComponent();
console.AppendText("Main OK!");
try
{
reconizer = new LBPHFaceRecognizer(1, 8, 8, 9, 65);
faceCascade = new CascadeClassifier("faceCascade.xml");
console.AppendText("created regocnizer\n" +
"loading cascade\n" +
"loading images");
reconizer.Read("ss");
foreach (var file in Directory.GetFiles(Application.StartupPath))
{
if (file.EndsWith("jpg"))
{
Image<Gray, byte> temp2 = new Image<Gray, byte>(file);
pictureBox1.Image = temp2.ToBitmap();
var result = reconizer.Predict(temp2);
console.AppendText(">>result:" + result.Label.ToString());
}
}
}
catch (Exception e)
{
console.AppendText("Error: " + e.Message);
}
//try
//{
// foreach (var file in Directory.GetFiles(Application.StartupPath))
// {
// if (file.EndsWith("jpg"))
// {
// console.AppendText("found: " + Path.GetFileNameWithoutExtension(file));
// temp = new Image<Gray, byte>(file);
// console.AppendText("loaded: " + Path.GetFileNameWithoutExtension(file));
// temp._EqualizeHist();
// //var detected_faces = faceCascade.DetectMultiScale(temp
// // , 1.1
// // , 20
// // , new Size(24, 24)
// // , Size.Empty);
// //if (detected_faces.Length == 0) { console.AppendText("lenght zero"); continue; }
// //temp.ROI = detected_faces[0];
// temp = temp.Copy();
// temp = temp.Resize(100, 100, Inter.Cubic);
// imageList.Add(temp);
// imageLabels.Add(Path.GetFileNameWithoutExtension(file));
// }
// }
// for (int i = 0; i < imageList.Count; i++)
// {
// imageIndicies.Add(i);
// }
// try { reconizer.Train(imageList.ToArray(), imageIndicies.ToArray()); }
// catch (Exception e) { console.AppendText("Error: " + e.Message); }
// reconizer.Write("faceRecognizer");
//}
//catch (Exception e)
//{
// console.AppendText("Error: " + e.Message);
//}
} }
private void console_TextChanged(object sender, EventArgs e) private void console_TextChanged(object sender, EventArgs e)