我正在尝试使用openCV中的python打开并处理TIF图像。我遵循以下代码:
Mat img = imread("my.tiff", CV_LOAD_IMAGE_GRAYSCALE);
Mat ff_in;
img.convertTo( ff_in, CV_32FC1, 1.0/255.0 ); // [0..1] range
Mat ff_out;
dft( ff_in, ff_out );
Mat ff_gray;
ff_out.convertTo( ff_gray, CV_8UC1, 255.0 );
imshow("lalala",ff_gray);
我认为上面的代码是用C ++编写的,我正在尝试为它找到python的替代品。以下是我从中获得的链接:link
目前,我已将其转换为python,如下所示:
img = cv2.imread('test2.TIF', cv2.CV_LOAD_IMAGE_GRAYSCALE);
img1 = np.float32(img)
img2 = cv2.dft(img1);
# What should I use HERE? Convert dft back to gray scale image
cv2.imshow( "Display window", img3);
cv2.waitKey(0);
任何评论或建议都非常感谢。谢谢。
答案 0 :(得分:-1)
我设法使用以下代码转换它:
img = cv2.imread('test.TIF', cv2.CV_LOAD_IMAGE_UNCHANGED) # img.dtype = uint16
img1 = np.float32(img / 255.0) # img1.dtype = float32
img2 = np.uint8(np.clip(img1 * 255, 0, 255)) # img2.dtype = uint8
cv2.imshow( "Display window", img2);
cv2.imwrite('test.png', img2)