저는 C++ 및 코딩에 새로운 것이므로 이미지를 부동 소수점 이미지로 변환 할 때 문제가 발생했습니다. 이미지의 픽셀 강도의 평균 및 표준 편차를 계산하여 오류를 반올림하기 위해 데이터를 상당히 효과적으로 시작하기 위해이 작업을 시도하고 있습니다. 내 코드는 아래와 같습니다..tif에서 부동 소수점 이미지로 변환
Mat img = imread("Cells2.tif");
cv::namedWindow("stuff", CV_WINDOW_NORMAL);
cv::imshow("stuff",img);
CvMat cvmat = img;
Mat dst = cvCreateImage(cvGetSize(&cvmat),IPL_DEPTH_32F,1);
cvConvertScale(&cvmat,&dst);
cvScale(&dst,&dst,1.0/255);
cvNamedWindow("Test",CV_WINDOW_NORMAL);
cvShowImage("Test",&dst);
그리고이 오류에
OpenCV의 오류를 실행하고 있습니다 : 잘못된 인수 알 수없는 함수, 파일 ...... \ 모듈 \ 코어 \ SRC \ (배열이 CvMat 또는 IplImage해야한다) array.cpp, line 1238
나는 어디에서나 보았고 모든 사람들이 img를 위에서 시도한 CvMat로 변환한다고 말하고 있었다. 위의 코드와 같이했을 때 OpenCV 오류 : 알 수없는 함수, 파일 ...... \ modules \ core \ src \ matrix.cpp에 잘못된 인수 (알 수없는 배열 유형)가 있습니다. 697
감사합니다 사전에 도움을 청하십시오.
흠 작동합니다. 그러나이 실제로 내 반올림 오류를 제거하려면 보이지 않았다. 내가 지금 코드를 실행할 때 내 평균은 1656.76의 값을 내고 Matlab의 평균 함수는 1776.23을 반환하고 cv :: Scalar z = mean (dst); 돌아 오는 중 1612.36 ... 어떤 아이디어? – VeniVici
다른 질문을하고 있습니다. 전환 방법은 정확합니다. 아마 평균 값을 계산하는 방법 일 것입니다. 평균 계산을위한 Matlab 또는 OpenCV 코드를 표시 할 수 있습니까? – Alexey
물론 도움을 주셔서 감사합니다. 내 코드는 아래와 같습니다. – VeniVici