![ff34328ec42e058f6408728b3ae2f0e9.png](https://img-blog.csdnimg.cn/img_convert/ff34328ec42e058f6408728b3ae2f0e9.png)
基础到进阶,跨度有点大,我们还是先踏实基础吧。对图像的处理实际上还是对图像像素矩阵的处理,当然还需要点想象空间。上一篇文章我们介绍了opencv的最基本用法,能够实现图片的加载、生成、读取像素矩阵、三通道分解等,详见:
peter.cao:图像处理之OpenCV的基础使用zhuanlan.zhihu.com![c97ef362013328d796eb2fe8871df2ad.png](https://img-blog.csdnimg.cn/img_convert/c97ef362013328d796eb2fe8871df2ad.png)
下面继续基础知识的应用实践。需要说明一下的是,在写下这些文字的过程中主要参考的是opencv的官方文档,如下为其链接:
OpenCV-Python Tutorialsdocs.opencv.org- 给图形增添简单元素
这里添加简单元素不是改变某一个范围的像素值,而是在已有图形上来添加线、矩形、园等元素。在添加的时候应该就是改变元素轨迹上的原有点像素值。
案例1:添加一条直线,使用cv2.line()函数
cv2.line(img,sp,ep,color,thickness,linetype): img就是目标图,sp为起始坐标,ep为终点坐标,color为颜色,thickness为线的粗细,linetype为线型。
import numpy as np
import cv2
img0= np.array(np.ones((300,300,3),dtype=np.uint8)) #构建一个三通道都是1的像素矩阵
cv2.line(img0,pt1=(10,10),pt2=(200,200),color=(255,0,0)) #在img0上绘制一条直线
cv2.imshow('line',img0)
cv2.waitKey(0)
执行效果为:
![929a78f08eae5c6117eb0b8a54379149.png](https://img-blog.csdnimg.cn/img_convert/929a78f08eae5c6117eb0b8a54379149.png)
案例2:添加一个矩形,使用cv2.rectangle函数
cv2.rectangle(img,sp,ep,color,thickness,linetype): img就是目标图,sp为起始坐标,ep为终点坐标,color为颜色,thickness为线的粗细,linetype为线型。参数与line函数一样。
import numpy as np
import cv2
img0= np.array(np.ones((300,300,3),dtype=np.uint8