我學習使用Emgu簡歷,偶然發現了這個開放CV例如:http://aishack.in/tutorials/tracking-colored-objects-in-opencv/如何使用CvInRange在Emgu CV
我想創建此代碼重新創建Emgu的CvInRange
功能:
// create upper & lower limit (HSV)
MCvScalar botLimit = new MCvScalar(20, 100, 100);
MCvScalar uprLimit = new MCvScalar(30, 255, 255);
// prepare the destination
Image<Hsv, byte> imageHSVDest = new Image<Hsv, byte>(imageWidth, imageHeight);
//
CvInvoke.cvInRange(imageHSV, botLimit, uprLimit, imageHSVDest);
CvInvoke.cvInRange()
的產生此錯誤消息(在VS2010):
錯誤1關於「Emgu.CV.CvInvoke.cvInRange(System.IntPtr,System.IntPtr,SYST最好重載方法匹配em.IntPtr,System.IntPtr)'有一些無效參數
錯誤2參數2:無法從'Emgu.CV.Structure.MCvScalar'轉換爲'System.IntPtr' 錯誤3參數3:無法從'Emgu轉換。 CV.Structure.MCvScalar'到'System.IntPtr'
看起來有一個不匹配的數據類型。我已經搜索如何將Emgu MCvScalar
轉換爲IntPtr
無濟於事。
我使用了MCvScalar
,翻譯了示例中的OpenCV cvScalar(20, 100, 100)
。這是錯的嗎?
忘了說,我已經成功在我的節目一樣做基本的東西:打開的圖像,在imagebox觀看圖像並將其轉換爲HSV色彩空間。 – 2013-05-06 21:14:31