读取IOS(objectiv-C)中的映像(tiff
)文件。
将数据保存为NSString*
并转换为cv::String
。
到目前为止,我想要的字符串存储在一个变量中。
NSString* strTiff = call.arguments[@"Tiff"];
NSString* png = call.arguments[@"Path"];
cv::String test1 = [strTiff cStringUsingEncoding:NSUTF8StringEncoding];;
cv::String test2 = [png cStringUsingEncoding:NSUTF8StringEncoding];;
cv::Mat tiffImage = cv::imread(test1);
bool res = cv::imwrite(test2, tiffImage);
但是当我运行cv::Imread();
时,cv::Mat tiffImage
镜像保存为nil
,看官方文档,怎么使用似乎没有问题,但是为什么返回nil呢?
tiffImage数据
(cv::Mat) tiffImage = {
flags = 1124007936
dims = 0
rows = 0
cols = 0
data = 0x0000000000000000
datastart = 0x0000000000000000
dataend = 0x0000000000000000
datalimit = 0x0000000000000000
allocator = nil
u = nil
size = {
p = 0x000000016cf41098
}
step = {
p = 0x000000016cf410e0
buf = ([0] = 0, [1] = 0)
}
}
1条答案
按热度按时间slwdgvem1#
“但是当我运行cv::Imread();,cv::Mat tiffImage图像保存为nil。”
分配器= nil
opencv read image fail with tiffImage is nil. opencv保存image will definitely fail.
您需要确定图像路径和opencv是否可读。