현재 OpenCv를 사용하는 Intel Perceptual 카메라에서 작업 중입니다. 카메라에서 이미지를 가져 와서 cv :: Mat 유형으로 변환 한 다음 스킨과 깊이 필터를 적용 할 수 있습니다.
이제 openCV에서 "convexHull"함수를 사용하여 볼록 선을 계산하려고하지만 힙 손상이 발생합니다.openCV로 볼록한 선체 및 힙 손상
여기서 코드의 재미있는 부분 : 피부 (255)를 0의 값으로 채워진 모체 인
Mat skin = curr.GetSkin()
vector<Point> points;
for(int i=0; i<skin.rows; i++)
{
for(int j=0; j<skin.cols; j++)
{
if ((int) skin.at<unsigned char>(i,j) > 0)
{
Point pt ;
pt.x = j ;
pt.y = i ;
points.push_back(pt);
}
}
}
Mat img(skin.rows, skin.cols, CV_8UC3);
vector<int> hull;
convexHull(Mat(points), hull, true);
.
NB : 이것은 내부 루프입니다.
제안 사항이 있으십니까?
추신 : 저는 PCL을 사용하여 동일한 문제가있었습니다. 법선을 계산하려고하자마자 힙 손상이 나타났습니다.
가 오류를 포함하는 코드의 조각을 제공 할 수 있습니다이 문제를 해결할 것인가? – Sga
제공된 정보를 기반으로 가능한 유일한 조언은 힙 손상 원인을 찾아 수정해야한다는 것입니다. (당신은 아마 동적으로 할당 된 배열의 바깥 쪽에서 또는 할당 취소 된 객체를 사용하여 쓰는 중입니다.) – molbdnilo
방금 일부 코드를 추가하기 위해 내 게시물을 편집했습니다. "convexHull (...)"줄을 제거하면 모든 것이 잘 실행됩니다. 대답 주셔서 감사합니다 – Hinkel