C# OpenCV and EmguCV
C# EmguCV 객체 감지와 추적
macroo
2023. 5. 23. 09:29
C# EmguCV 객체 감지와 추적
using Emgu.CV;
using Emgu.CV.CvEnum;
using Emgu.CV.Structure;
public void DetectAndTrackObjects()
{
// 동영상 로딩
VideoCapture capture = new VideoCapture("video.mp4");
// Cascade Classifier 로드
CascadeClassifier faceCascade = new CascadeClassifier("haarcascade_frontalface_default.xml");
while (true)
{
// 프레임 읽기
Mat frame = capture.QueryFrame();
if (frame == null)
break;
// 객체 감지
var faces = faceCascade.DetectMultiScale(frame, 1.1, 3, Size.Empty);
// 감지된 객체 표시
foreach (var face in faces)
CvInvoke.Rectangle(frame, face, new Bgr(0, 255, 0).MCvScalar, 2);
// 추적된 프레임 표시
ImageViewer viewer = new ImageViewer(frame, "Detected Objects");
viewer.ShowDialog();
}
capture.Dispose();
}