如何运用OpenCV的imread()函数准确读取图片的六种技巧?
- 内容介绍
- 文章标签
- 相关推荐
本文共计789个文字,预计阅读时间需要4分钟。
经常看到有人在网络上询问关于`imread()`函数读取图片失败的问题。今天心血来潮,经过实践,总结出`imread()`调用的四种正确姿势。
通常,我需要获取一张图片的绝对路径是这样做的:在图片上点击右键,选择属性,在弹出的窗口中找到位置信息。
经常看到有人在网上询问关于imread()函数读取图片失败的问题。今天心血来潮,经过实验,总结出imread()调用的四种正确姿势。
通常我要获取一张图片的绝对路径是这样做的:在图片上右键——属性——安全——对象名称。然后复制对象名称就得到了图片的绝对路径。
如图:
然而这样得到的路径直接复制粘贴到vs里面会直接报错,如下:
可以看出我们获取的绝对路径的表示方法是单右斜线形式的。显然opencv的imread()不支持这种方式。但是!!!经过实验发现imread()除了不支持单右斜线形式,其他斜线形式都支持!!!比如双右斜线形式、双左斜线形式、单左斜线形式、前述三种斜线混合型式都是支持的!!我想知道为什么??
看图,下面的六种方式任何一种都是支持的,都可以成功读取并显示图片。
我个人经常用的方法是第5种,相对路径法。
本文共计789个文字,预计阅读时间需要4分钟。
经常看到有人在网络上询问关于`imread()`函数读取图片失败的问题。今天心血来潮,经过实践,总结出`imread()`调用的四种正确姿势。
通常,我需要获取一张图片的绝对路径是这样做的:在图片上点击右键,选择属性,在弹出的窗口中找到位置信息。
经常看到有人在网上询问关于imread()函数读取图片失败的问题。今天心血来潮,经过实验,总结出imread()调用的四种正确姿势。
通常我要获取一张图片的绝对路径是这样做的:在图片上右键——属性——安全——对象名称。然后复制对象名称就得到了图片的绝对路径。
如图:
然而这样得到的路径直接复制粘贴到vs里面会直接报错,如下:
可以看出我们获取的绝对路径的表示方法是单右斜线形式的。显然opencv的imread()不支持这种方式。但是!!!经过实验发现imread()除了不支持单右斜线形式,其他斜线形式都支持!!!比如双右斜线形式、双左斜线形式、单左斜线形式、前述三种斜线混合型式都是支持的!!我想知道为什么??
看图,下面的六种方式任何一种都是支持的,都可以成功读取并显示图片。
我个人经常用的方法是第5种,相对路径法。

