OpenCV实验系列之基本图片操作

OpenCV实验系列之基本图片操作

注意:以下内容根据opencv官网提供的教程结合个人理解所得,仅是个人学习笔记,可能存在错误或偏差,欢迎指正。

读写及显示图片

Mat img = imread(filename)//读取图片,图片格式判定取决于最先的几个字节
Mat img = imread(filename, IMREAD_GRAYSCALE);//以灰度图方式读取图片
imwrite(filename, img);//写入图片(写入图片的格式取决于文件名的拓展名)

读写像素值

//读取单通道像素值
Scalar intensity = img.at<uchar>(y, x);
Scalar intensity = img.at<uchar>(Point(x, y));//注意这里x,y位置是有区别的!

//读取BGR三通道像素值
Vec3b intensity = img.at<Vec3b>(y, x);
uchar blue = intensity.val[0];
uchar green = intensity.val[1];
uchar red = intensity.val[2];

//写入像素值
img.at<uchar>(y, x) = 128;

//将图片全部赋值为0
img = Scalar(0);

//显示图片
namedWindow("image", WINDOW_AUTOSIZE);
imshow("image", img);

选取图片特定区域

Rect r(10, 10, 100, 100);
Mat smallImg = img(r)

转换图片格式

//将图片转由彩图换成灰度图
cvtColor(img, grey, COLOR_BGR2GRAY);
//转换图片数据格式
src.convertTo(dst, CV_32F);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值