Hab ne lösung:
static readonly CascadeClassifier cascadeClassifier = new CascadeClassifier("haarcascade_frontalface_alt_tree.xml");
private void screentimer_Tick(object sender, EventArgs e)
{
Bitmap printscreen = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height);
Graphics graphics = Graphics.FromImage(printscreen as Image);
graphics.CopyFromScreen(0, 0, 0, 0, printscreen.Size);
using (MemoryStream s = new MemoryStream())
{
printscreen.Save(s, System.Drawing.Imaging.ImageFormat.Bmp);
//pictureBox1.Size = new System.Drawing.Size(this.Width, this.Height);
pictureBox1.Image = Image.FromStream(s);
}
Bitmap bitmap = new Bitmap(pictureBox1.Image);
Image<Bgr, byte> grayImage = new Image<Bgr, byte>(bitmap);
Rectangle[] rectangles = cascadeClassifier.DetectMultiScale(grayImage, 1.4, 0);
foreach(Rectangle rectangle in rectangles)
{
using (Graphics g = Graphics.FromImage(bitmap))
{
using(Pen pen = new Pen(Color.Red, 1))
{
g.DrawRectangle(pen, rectangle);
}
}
}
pictureBox1.Image = bitmap;
}
}