2017-04-24 49 views
0

我得到了一個函數,我處理不同的數組[] [],我需要使用Mat,因爲我正在處理圖像,所以我需要該圖像的像素。如何將int [] []轉換爲opencv Java中的Mat?

System.loadLibrary(Core.NATIVE_LIBRARY_NAME); 
Mat img = Imgcodecs.imread(imagelocation); 

我需要一種方法來獲取該Mat的像素值。 但我想知道如果我可以將一個數組[] []轉換成一個Mat。 我希望你能理解並幫助我。

回答

1

爲了讓你可以用墊子的像素值:reference

Mat m; 
int bufferSize = m.channels()*m.cols()*m.rows(); 
byte [] b = new byte[bufferSize]; 
m.get(0,0,b); // get all the pixels 
double pixelValue = m.get(0, 0) // get pixel at row 0, column 0 

在磁盤陣列轉換成墊:

byte[] raw_data = ...; 
Mat mat = new Mat(); 
mat.put(0, 0, raw_data);