최적화해야 할 코드를 작성했습니다. 코드가 실제로 최적인지 확인하기 위해 커뮤니티와 확인하는 것만 큼 좋았습니다. 그것은 Hough 변환을위한 축약을 채 웁니다. 실제로 OpenCV 라이브러리에서 대부분의 코드를 복사하여 복사합니다. 감사!Hough 변환을위한 누적 기 충전
int i,j,n,index;
for (i = 0;i<numrows;i++)
{
for (j = 0;j<numcols;j++)
{
if (img[i*numcols + j] == 100)
{
for (n = 300;n<600;n++)
{
index = cvRound(j*tabCos[n] + i * tabSin[n]) + (numrho-1)/2;
accum[(n+1) * (numrho+2) + index+1]++;
}
}
}
}
이 코드가 적용되는 실제 데이터가 있습니까? 몇 가지 가능한 최적화가있는 것처럼 보입니다. 일부는 데이터에 독립적이지만, 다른 것은 img에있는 데이터의 실제 분포와 imag의 크기에 따라 달라집니다. – kriss
내가 가지고있는 데이터의 예제는 http : // stackoverflow에 있습니다.co.kr/questions/4372259/hough-transform-error-in-matlab-and-opencv 칼럼 당 3 포인트 만 있다는 사실을 깨닫습니다. (그 이미지를 어떻게 만들었습니까?) 그래서 속도를 높이는 몇 가지 방법이 있어야합니다. 시간 consumin 부분이 accumulator 채우기 및 이미지를 통해 이동하지 않습니다 – Denis