로봇 카메라의 스트리밍 이미지에서 Canny Detection을 사용하고 있습니다 (원 찾기). 가장자리 사이의 최대 콘트라스트를 얻으려면 RGB 이미지를 별도의 채널로 분할하고 각각에 Canny를 수행 한 다음 비트 단위로 또는 가장자리를 병합 된 이미지로 결합하십시오. 간단한 이미지에서 사용하면 내 fps는 30fps에서 비교적 영향을받지 않습니다. 카메라가 더 복잡한 이미지를 볼 때 fps는 24fps로 떨어집니다. 이게 정상인가? 그렇다면 어쨌든 속도를 높여 일정한 프레임 속도로 계속 실행할 수 있습니까? 실제로,더 복잡한 이미지에서 OpenCV의 Canny Detection 속도가 느림
vector<Mat> rgb;
split(src, rgb);
Canny(rgb[0], rgb[0], cannyThreshold, cannyThreshold2, 3);
Canny(rgb[1], rgb[1], cannyThreshold, cannyThreshold2, 3);
Canny(rgb[2], rgb[2], cannyThreshold, cannyThreshold2, 3);
Mat mergedImage;
bitwise_or(rgb[0], rgb[1], mergedImage);
bitwise_or(mergedImage, rgb[2], mergedImage);
의미가 있습니다. bitwise_or는 아마 양수 값이있는 이미지 위치만을보고 있기 때문입니다. 양수 값이 더 많으면 더 오래 걸립니다. –