opencv-学习笔记(2)


这章记录了

  1. 获取像素点,改变像素点
  2. 获取图像的属性(行,列,通道数,数据类型)
  3. roi感应区
  4. 拆分以及合并图像通道
  5. 边缘扩充

opencv获取像素点,改变像素点

----下面是一般方法

获取像素很简单只需要img[x,y]就可以获取像素

img[x,y,0/1/2]就可以获取brg中某一值

修改也很简单img[100,100]=[255,255,255]即可

----优化

我们用item获取元嵩

itemset改变元素

代码如下

import numpy as np
import cv2 img=cv2.imread('1.jpg',1)
print(img.item(10,10,2))
img.itemset((10,10,2),100)
print(img.item(10,10,2))

opencv获取图像的行列和通道数

用函数img.shape即可

img.size获取像素数目

img.dtype获取图像数据类型

opencv里面一般是##uint8


图像感应ROI

简单获取感应区只需要

img[100:200,0:200]#获取100列到200列,0行到200行

import numpy as np
import cv2 img=cv2.imread('new.jpg',1)
ball=img[100:200,0:200]#100列到200列,0行到200行
img[400:500,400:600]=ball
cv2.imshow('fuck',img)
cv2.waitKey(0)

效果如下


opencv拆分以及合并图像通道

cv2.namedWindow('bgr')
img=cv2.imread('1.jpg',1) img[:,:,2]=0
cv2.imshow('bgr',img)
cv2.waitKey(0)

这段代码把所有红色设为0

得到蓝绿图

红蓝img[:,:,1]=0

最后是红绿图。


图像边缘扩充

cv2.copyMakeBorder(图像对象,上下左右四个边界的扩充像素,扩充方式)

扩充方式有

cv2.BORDER_REPLICATE

cv2.BORDER_REFLECT

cv2.BORDER_REFLECT_101

cv2.BORDER_WRAP

cv2.BORDER_CONSTANT,value=BLUE

这里不放图了

opencv-学习笔记(2)的更多相关文章

  1. opencv学习笔记(七)SVM+HOG

    opencv学习笔记(七)SVM+HOG 一.简介 方向梯度直方图(Histogram of Oriented Gradient,HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子 ...

  2. opencv学习笔记(六)直方图比较图片相似度

    opencv学习笔记(六)直方图比较图片相似度 opencv提供了API来比较图片的相似程度,使我们很简单的就能对2个图片进行比较,这就是直方图的比较,直方图英文是histogram, 原理就是就是将 ...

  3. opencv学习笔记(五)镜像对称

    opencv学习笔记(五)镜像对称 设图像的宽度为width,长度为height.(x,y)为变换后的坐标,(x0,y0)为原图像的坐标. 水平镜像变换: 代码实现: #include <ios ...

  4. opencv学习笔记(四)投影

    opencv学习笔记(四)投影 任选了一张图片用于测试,图片如下所示: #include <cv.h> #include <highgui.h> using namespace ...

  5. opencv学习笔记(三)基本数据类型

    opencv学习笔记(三)基本数据类型 类:DataType 将C++数据类型转换为对应的opencv数据类型 OpenCV原始数据类型的特征模版.OpenCV的原始数据类型包括unsigned ch ...

  6. opencv学习笔记(二)寻找轮廓

    opencv学习笔记(二)寻找轮廓 opencv中使用findContours函数来查找轮廓,这个函数的原型为: void findContours(InputOutputArray image, O ...

  7. opencv学习笔记(一)IplImage, CvMat, Mat 的关系

    opencv学习笔记(一)IplImage, CvMat, Mat 的关系 opencv中常见的与图像操作有关的数据容器有Mat,cvMat和IplImage,这三种类型都可以代表和显示图像,但是,M ...

  8. paper 93:OpenCV学习笔记大集锦

    整理了我所了解的有关OpenCV的学习笔记.原理分析.使用例程等相关的博文.排序不分先后,随机整理的.如果有好的资源,也欢迎介绍和分享. 1:OpenCV学习笔记 作者:CSDN数量:55篇博文网址: ...

  9. (转) OpenCV学习笔记大集锦 与 图像视觉博客资源2之MIT斯坦福CMU

          首页 视界智尚 算法技术 每日技术 来打我呀 注册     OpenCV学习笔记大集锦 整理了我所了解的有关OpenCV的学习笔记.原理分析.使用例程等相关的博文.排序不分先后,随机整理的 ...

  10. OpenCV学习笔记(27)KAZE 算法原理与源码分析(一)非线性扩散滤波

    http://blog.csdn.net/chenyusiyuan/article/details/8710462 OpenCV学习笔记(27)KAZE 算法原理与源码分析(一)非线性扩散滤波 201 ...

随机推荐

  1. Oracle 缓存命中率问题一则(里面有个问题咨询大佬们)

    近日,核心数据库频繁抱出数据库缓存命中率过低,于是开始进行排查. 1.监控软件告警信息 2.抓取告警时间段内的awr报告进行分析 3.execute与parse命中率过低,说明分析(硬解析与软解析)的 ...

  2. Mybatis 原始dao CRUD方法

    用到的相关jar包及所用版本如下: 其中的Mybatis可以到github.com的网站下载 <project xmlns="http://maven.apache.org/POM/4 ...

  3. c++11线程创建的三种方法

    一.用一个初始函数创建一个线程 直接看代码:注意c++在运行一个可执行程序的时候(创建了一个进程),会自动的创建一个主线程,这个主线程和进程同生共死,主线程结束,进程也就结束了. #include & ...

  4. 自动曝光修复算法 附完整C代码

    众所周知, 图像方面的3A算法有: AF自动对焦(Automatic Focus)自动对焦即调节摄像头焦距自动得到清晰的图像的过程 AE自动曝光(Automatic Exposure)自动曝光的是为了 ...

  5. 搭建 Redis 的主从

    主从概念 ⼀个master可以拥有多个slave,⼀个slave⼜可以拥有多个slave,如此下去,形成了强⼤的多级服务器集群架构 master用来写数据,slave用来读数据,经统计:网站的读写比率 ...

  6. 前台页面上传data image图片,java后台接收图片保存

    最近在项目中有这么一个需求,就是上传一个视频文件,然后要获取视频文件的第一帧图片,这个可以通过canvas获取得到,得到的是一个dataURL,之后还要将这个图片上传到云,这个时候如何操作就不清楚了, ...

  7. 原型 - 实现自己的jQuery

    每个第一次使用jq的开发者都感到惊叹,jq的$太神奇了,究竟是怎么做到的使用$控制dom 赞叹前人之余,探究其本源才是前端开发者应该做的事,社区常常说,不要重复造轮子, 可是啊,连轮子都造不出来,又怎 ...

  8. background-image 背景图片的设置

    background-image 背景图片的设置 属性:background-image: url(img/banner.jpg); 1.设置背景图的宽度 background-size: 400px ...

  9. .Net Core使用Redis-从安装到使用

    一.安装 本文使用的操作系统是Centos7 在Redis中文网下载最新的Redis压缩包:http://www.redis.cn/ 把包上传到Liunx服务器上,cd 到包所在的目录执行以下命令 # ...

  10. ckeditor + ckfinder + oss存储

    ckeditor 与 ckfinder 的整合方法 网上有很多,这里我也就不说了.  (主要是以前整合的现在忘记咋弄的了0.0) 我这里整合后直接使用js代码 <script type=&quo ...