3、OpenCV图像操作与cv::Mat数据结构详解

OpenCV图像操作与cv::Mat数据结构详解

1. 图像创建与读取

在OpenCV中,可以创建每像素由3个字节组成的图像,并将其指定为 CV_8UC3 类型。若输入图像保存为灰度图像,那么三个通道将包含相同的值。若想以保存的格式读取图像,只需在 imread 函数中传入一个负值作为第二个参数。可以使用 channels 方法检查图像的通道数,示例代码如下:

std::cout << "This image has "
          << image.channels() << " channel(s)";

在使用 imread 打开图像时,如果未指定完整路径,将使用默认目录。从控制台运行应用程序时,默认目录是当前控制台的目录;若直接从IDE运行应用程序,默认目录通常是包含项目文件的目录。因此,要确保输入图像文件位于正确的目录中。

2. 图像显示

使用 imshow 显示由整数组成的图像(如 CV_16U 表示16位无符号整数, CV_32S 表示32位有符号整数)时,图像的像素值会先除以256,以便用256种灰度显示。对于由浮点数组成的图像,假设可能的值范围在0.0(显示为黑色)到1.0(显示为白色)之间,超出此范围的值,大于1.0的显示为白色,小于0.0的显示为黑色。

3. 高级图形用户界
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值