Java OpenCV (3.3.1, windows 8 x64)와의 첫 접촉에서 ROI가있는 서로 다른 크기의 이미지를 동적으로 결합하려고합니다. 여기에 내 코드의 비트 :다른 크기의 이미지를 ROI로 결합
Mat _mat = Utils.imageFileToMat(new File("angelina_jolie.jpg")); //Angelina's face
Mat grayMat = new Mat();
Imgproc.cvtColor(_mat, grayMat, Imgproc.COLOR_BGR2GRAY);
Rect rect = new Rect(new Point(168, 104), new Point(254, 190)); //Angelina's eye ROI
Mat truncated = _mat.submat(rect); //Angelina's eye mat
Mat merge = _mat.clone();
truncated.copyTo(merge);
//show _mat
//show truncated
//show merge
내가보고 싶은 것은 안젤리나 졸리가 그레이 스케일에 그녀의 눈이다.
내가 보는 것은 단정 또는 자른 이미지 (단지 눈)입니다.
나는 copyTo(mat, mask)
, setOf
과 같이 시도했지만 항상 많은 새로운 주장을했습니다.
크기에 맞게 잘린 크기를 잘라야합니까? 프로그래밍 방식으로 어떻게 할 수 있습니까?
내가 내 자신의 질문에 대답하기 위해 여기에왔다. 감사! (대답에 대한 답변 opencv 사이트 나는 대답도하고 싶다면 같은 질문을 게시했습니다.) – jotapdiez
@jotapdiez 당신이 그 중 하나를 사용합니다.) 당신이 해결책을 찾았습니다. – zindarod
Imgproc.cvtColor (grayMat, grayMat, Imgproc.COLOR_GRAY2BGR) 및 truncated.copyTo (merge.submask ....)만으로 문제를 해결합니다. 마스크 생성은 서브 마스크보다 낫습니다? – jotapdiez