2013-09-27 71 views
2

我寫道:如何墊子(OpenCV的)保存到陣列

Mat sobel = new Mat(); 
Imgproc.Sobel(threshold,sobel, sobel.depth(), 1, 0); 
Highgui.imwrite("Sobel.jpg", sobel); 
sobel.create(sobel.height(),sobel.width(), CvType.CV_8UC(2));  
System.out.println(sobel.dump()); 

//display matrix 

然後我試圖得到索貝爾的數組。但是我很困惑如何從Mat中獲得價值並將其放入Array中。

回答

3

像canny或sobel這樣的圖像過濾器只是對圖像進行二值化/高亮顯示。

如果你想一切都來訪問像素:

byte [] pixels = new byte[ sobel.height() * sobel.width() ]; 
sobel.get(0,0,pixels); 

,如果你想點/輪廓的列表,你不得不使用http://docs.opencv.org/java/org/opencv/imgproc/Imgproc.html#findContours(org.opencv.core.Mat,%20java.util.List,%20org.opencv.core.Mat,%20int,%20int)

+0

我希望我能給予好評的兩倍!謝謝! –