簡體   English   中英

用opencv讀取16位tif

[英]Read 16-bit tif with opencv

我正在嘗試使用opencv 2.4.3讀取16位彩色TIF。 問題是我無法滿足任何需求。 我得到的是一系列黑色和灰色線條。

我得到的,而不是溫哥華的衛星圖像......

我嘗試過不同的方式來閱讀圖像:

cv::Mat cvimage = cv::imread(imageFile, CV_LOAD_IMAGE_COLOR | CV_LOAD_IMAGE_ANYDEPTH);
cv::Mat cvimage = cv::imread(imageFile, CV_LOAD_IMAGE_UNCHANGED);

cv::imshow("image", cvimage);

正如預期的那樣,cvimage的typeCV_16UC3

使用opencv讀取16位圖像的正確方法是什么?

嘗試:

cv::Mat cvimage = cv::imread(imageFile
                             , CV_LOAD_IMAGE_ANYCOLOR | CV_LOAD_IMAGE_ANYDEPTH);

如果這不起作用,您可以先將其轉換為PNG因為OpenCV可以讀取甚至正確寫入16位PNG文件。 您可以將您的TIFF轉換為PNG而不會丟失。

cv::Mat cvimage = cv::imread(imageFile, -1);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM