簡體   English   中英

如何將OpenCV代碼轉換為JavaCV代碼

[英]How to convert opencv code into javacv code

如何轉換此C ++ opencv代碼。 (此代碼來自opencv https://github.com/Itseez/opencv/blob/master/samples/cpp/camshiftdemo.cpp中的 camshift跟蹤演示)

Mat roi(hue,selection), maskroi(mask,selection);

成javacv代碼?

neweast javacpp預設javacpp-presets-0.9已經具有整個opencv javacv版本的實現。 檢查所需功能是否可用。 https://github.com/bytedeco/javacpp-presets/tree/master/opencv

如果沒有,我想您需要查看兩個c ++函數roi()和maskroi()的定義(實現),以便將行代碼自行轉換為javacv對應項。

並且,javacpp的google組也是詢問您是否有javacpp相關問題的最佳場所。 http://groups.google.com/group/javacpp-project

注意:

對於c ++輸出參數類型(通過指針調用或通過引用調用),您需要了解java函數參數沒有輸出類型,因此您需要使用數組作為替代方法,例如:

C ++代碼:

void detectBothEars(Mat input, Rect* left, Rect* right);

javacv對應應為:

void detectBothEarsRect(Mat input, Rect[] left, Rect[] right);

客戶端代碼為:

Rect[] leftRect = new Rect[1];
Rect[] rightRect = new Rect[1];
detectBothEars(face, leftRect , rightRect);

Java提供了相同的構造函數: public Mat(Mat m,Rect roi)

因此,我們基本上可以做同樣的事情:

Mat roi = new Mat(hue, selection), maskroi = new Mat(mask, selection);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM