2013-05-18 3 views
7

Java에서 openCV 행렬을 가지고 있으며 그 내용을 인쇄하고 싶습니다.이 형식을 얻을 수 있도록 descriptor.toString() 함수로 toString() 함수를 시도했습니다.Java에서 opencv 행렬 내용을 인쇄하십시오.

"[[1,2,3,4],[4,5,6,7],[7,8,9,10]]" 

각 배열은 행렬의 i 번째 행이지만 다음 결과가 나타납니다. toString하지만 여전히 동일한 문제를 제거하려고했습니다.

Mat [ 3*4*CV_8UC1, isCont=true, isSubmat=false, nativeObj=0x5dc93a48, dataAddr=0x5d5d35f0] 

여기서 3은 행 수이고 4는 열 수입니다.

매트릭스 콘텐츠를 얻으려면 어떤 도움이 필요합니까?!

답변

3

그것의 정확히 [[1,2,3,4],[4,5,6,7],[7,8,9,10]]하지만 작동 :

Mat freqs = Mat.zeros(10, 10, CvType.CV_32F); 

// do math... 

String dump = freqs.dump(); 
Log.d(TAG, dump); 
+1

로그와 함께 사용하면 dump()가 충돌하는 경우가 있습니다. 어떤 아이디어. –

7

코드 :

int[][] testArray = new int[][]{{1,2,3,4},{4,5,6,7},{7,8,9,10}}; 
    Mat matArray = new Mat(3,4,CvType.CV_8UC1); 
    for(int row=0;row<3;row++){ 
     for(int col=0;col<4;col++) 
      matArray.put(row, col, testArray[row][col]); 
    } 
    System.out.println("Printing the matrix dump"); 
    System.out.println(matArray.dump()); 

출력 :
행렬이
덤프 인쇄 [1, 2, 3, 4;
4, 5, 6, 7;
7, 8, 9, 10

관련 문제