文章目录

  • 一、知识点
  • 二、函数原型
    • 1、按位与操作
    • 2、按位或操作
    • 3、按位异或操作
    • 4、取反操作
    • 5、绘制矩形框操作
  • 三、代码
  • 四、附图
    • 1、按位与操作附图
    • 2、按位或操作附图
    • 3、按位异或操作附图
    • 4、取反操作附图

这篇博客我们来学习像素操作之逻辑操作。

一、知识点

主要的知识点是:
对图像中的位操作:

- bitwise_and    //按位与
- bitwise_xor    //按位异或
- bitwise_or     //按位或

取反操作:

- bitwise_not    //取反

二、函数原型

1、按位与操作

bitwise_and(InputArray src1, InputArray src2,OutputArray dst, InputArray mask=noArray());//dst = src1 & src2

参数一:输入图片1
参数二:输入图片2
参数三:输出图片

2、按位或操作

void bitwise_or(InputArray src1, InputArray src2,OutputArray dst, InputArray mask=noArray());//dst = src1 | src2

参数一:输入图片1
参数二:输入图片2
参数三:输出图片

3、按位异或操作

void bitwise_xor(InputArray src1, InputArray src2,OutputArray dst, InputArray mask=noArray());//dst = src1 ^ src2

参数一:输入图片1
参数二:输入图片2
参数三:输出图片

4、取反操作

void bitwise_not(InputArray src, OutputArray dst,InputArray mask=noArray());//dst = ~src

参数一:输入图片
参数二:输出图片

5、绘制矩形框操作

rectangle(img2, Point(j,i), Point(j + img4.cols, i + img4.rows), Scalar(255, 255, 0), 2, 8);

参数:
参数一:输入图片
参数二:矩形左上角坐标
参数三:各个点坐标
参数四:颜色
参数五:线条宽度
参数六:线型

三、代码

我们来附一下我们的代码:

void QuickDemo::bitewise_Denmo(Mat &image)
{Mat m1 = Mat::zeros(Size(256, 256), CV_8UC3);Mat m2 = Mat::zeros(Size(256, 256), CV_8UC3);rectangle(m1, Rect(100, 100, 80, 80), Scalar(255, 255, 0), -1, LINE_8, 0);rectangle(m2, Rect(150, 150, 80, 80), Scalar(0, 255, 255), -1, LINE_8, 0);imshow("m1", m1);imshow("m2", m2);Mat dst ;//bitwise_or(m1, m2, dst);  //按位或操作bitwise_and(m1, m2, dst);   //按位与操作//bitwise_not(image, dst);  //取反操作//bitwise_xor(m1, m2, dst);  //按位异或操作imshow("像素位操作", dst);}

代码思路:
我们这代码是创建了m1、m2两个尺寸为(256,256)的8位uchar类型的3通道矩阵,然后用这两个矩阵进行按位与、按位或按位异或、取反操作的,然后用rectangle函数去在这个窗口里绘制矩形,对在两个窗口中绘制的矩形进行上述操作。下面看一下运行结果。

四、附图

1、按位与操作附图

2、按位或操作附图

3、按位异或操作附图

4、取反操作附图


这篇博客我们就学习像素操作之逻辑操作!
加油吧 阿超没有蛀牙!

C++ opencv之像素操作之逻辑操作(bitwise_and,bitwise_xor,bitwise_or,bitwise_not)相关推荐

  1. 第三章 Opencv图像像素操作

    目录 1.像素 1-1.确定像素位置 1-2.获取指定像素的像素值 1-3.修改像素的BGR值 2.用numpy模块操作像素 2-1.创建图像 1.创建黑白图像 2.创建彩色图像 3.创建随机图像 2 ...

  2. C++Opencv图像像素操作

    Mat对象与数学中的矩阵相似,也可以实现加减乘除. //像素值加法 Mat operator_demo1(Mat& image) {Mat dst;dst = image + Scalar(5 ...

  3. OpenCV Mat数据类型像素操作

    转自:http://blog.csdn.net/skeeee/article/details/13297457 OpenCV图像像素操作及效率分析 在计算机视觉应用中,对于图像内容的读取分析是第一步, ...

  4. android都图片mat_计算机视觉 OpenCV Android | Mat像素操作(图像像素的读写、均值方差、算术、逻辑等运算、权重叠加、归一化等操作)...

    本文目录 1. 像素读写 2. 图像通道与均值方差计算 3. 算术操作与调整图像的亮度和对比度 4. 基于权重的图像叠加 5. Mat的其他各种像素操作 1. 像素读写 Mat作为图像容器,其数据部分 ...

  5. 【OpenCV 4开发详解】两图像间的像素操作

    本文首发于"小白学视觉"微信公众号,欢迎关注公众号 本文作者为小白,版权归人民邮电出版社发行所有,禁止转载,侵权必究! 经过几个月的努力,小白终于完成了市面上第一本OpenCV 4 ...

  6. Python OpenCV像素操作

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自:opencv学堂 Python OpenCV像素操作 环 ...

  7. opencv实战2-修改保存图片、像素操作

    1 加载修改保存图像 1.1 修改图像 opencv中 灰度图像由常量 CV_8U 表示 C++ 中的 unsigned char: 三通道图像由 常量 CV_8UC3 表示: 1.2 保存图像 #i ...

  8. OpenCV实战(4)——像素操作

    OpenCV实战(4)--像素操作 0. 前言 1. 图像的基本组成 2. 访问像素值 2.1 修改图像像素 2.2 cv::Mat_ 模板类 2.3 完整代码示例 3. 用指针扫描图像 3.1 图像 ...

  9. OpenCV入门基础操作(二)----图像像素的处理

    OpenCV入门基础操作(二)----图像像素的处理 像素处理 读取一个图像像素 修改像素值 代码案例 像素处理 读取一个图像像素 在读取图像的时候一般要用到如下的命令: 返回值=图像(位置参数), ...

最新文章

  1. Beginning IOS 7 Development Exploring the IOS SDK - Handling Basic Interface Fun
  2. java网络编程之TCP通讯
  3. 算法:删除数组中的重复项
  4. 中煤保险 公司举办“虎啸杯”保险知识竞赛活动
  5. Delphi中String与PAnsiChar转换
  6. Java中数据是如何存储
  7. linux tomcat守护_linux-非root用户运行tomcat(示例代码)
  8. 机器学习基础笔记总结
  9. bulk of the 用法_高考英语|10大词类用法考点详解
  10. 【报告分享】2020年创新报告-埃森哲.pdf(附下载链接)
  11. 在Emacs中使用git
  12. 吴恩达教授机器学习课程笔记【七】- Part 7 最优模型选择
  13. execution表达式里写多个条件
  14. win10误删的注册表能还原吗_教你手动还原Win10注册表?
  15. 犀牛云企业云网站:当我们在谈论网站建设的时候,我们在谈论什么?
  16. 小说阅读大全(安卓)最后一个绿色版。
  17. 携程硅谷人才见面会邀请你参加!
  18. 永不消逝的电波(四):从无线电角度揭秘定位劫持
  19. python编程工时计算_Python小项目——工时计算
  20. SpringBoot集成MyBatis(微服务)

热门文章

  1. Skleran-线性模型-普通最小二乘法-LinearRegression
  2. Go项目配置管理神器之viper使用详解
  3. 2021年9月国产数据库排行榜-墨天轮:达梦奋起直追紧逼OceanBase,openGauss反超PolarDB再升一位
  4. 如何制作win7 U盘安装盘
  5. 从又苦又累的销售工作到python程序员,我哭了
  6. css -moz_moz-border-radius(CSS属性)
  7. 隐函数求导(一元和二元)
  8. 文件安全检测--持续更新
  9. Linux—添加开机启动
  10. 大专学历计算机专业可以积分,持有大专紧缺急需专业可直接申请上海居住证积分?...