using System; using System.Collections.Generic; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using OpenCvSharp; using Vision.Recognition.Helper.OpenCv; namespace Vision.Recognition.Task { /// /// 捕获的内容 /// 以及一些多个trigger会用到的内容 /// public class CaptureContent { public Bitmap SrcBitmap { get; } public int FrameIndex { get; private set; } public int FrameRate { get; private set; } public CaptureContent(Bitmap srcBitmap, int frameIndex, int frameRate) { SrcBitmap = srcBitmap; FrameIndex = frameIndex; FrameRate = frameRate; } private Mat? _srcMat; public Mat SrcMat { get { _srcMat ??= SrcBitmap.ToMat(); return _srcMat; } } private Mat? _srcGreyMat; public Mat SrcGreyMat { get { _srcGreyMat ??= new Mat(); Cv2.CvtColor(SrcMat, _srcGreyMat, ColorConversionCodes.BGR2GRAY); return _srcGreyMat; } } } }