智能车备赛

智能车1(OpenCV-Python)

OpenCV-Python学习

  1. 新建python文件
    后缀名为.py
  2. 运行python文件(用VScode可直接跳过)
    命令提示符输入cmd,cd进入路径(若需换盘以D盘为例,输入d:),找到对应Python文件输入python xx.py即可运行文件(xx为文件名)路径不要有中文
  3. 图片应在包含python文件夹下
  4. opencv采用BGR模式,而不是RGB

应用1

例1

import cv2
#图片导入
img = cv2.imread('lena.jpg') #读入lena.jpg
#img = cv2.imread('lena.jpg',cv2.IMREAD_GRAYSCALE)以灰度图显示
cv2.imshow('s',img) #标题为s展示
cv2.waitKey(0) #按任意键退出 

img = cv2.imread('lena.jpg') # cv2库读取图片默认读取BGR格式,plt库以RGB格式显示图片,需要转化
plt.imshow(imutils.opencv2matplotlib(img))#显示彩色图片
print(img.shape)

复制图片

cv2.imwrite("lena_gray.jpg",img) #在相应文件夹下复制出的图像以lena_gray.jpg命名

图像的二值化

ret,img2 = cv2.threshold(img,100,255,cv2.THRESH_BINARY) #(图像名,阈值,最大值,二值化类型)

图像的缩放

img_resize = cv2.resize(img,None,fx=0.2,fy=0.3) #放大缩小    元组:None  比例:fx,fy轴缩放

应用2

例2

形态学分析

腐蚀:取核中像素值的最小值代替锚点位置的像素值,这样就会使图像中较暗的区域面积增大,较亮的的区域面积减小
膨胀:膨胀操作和腐蚀操作正好相反,是取核中像素值的最大值代替锚点位置的像素值,这样会使图像中较亮的区域增大,较暗的区域减小。如果是一张黑底,白色前景的二值图,就会使白色的前景物体颜色面积变大

kernel = cv2.getStructuringElement(cv2.MORPH_RECT,(5,5)) #核
eimg = cv2.erode(img,kernel,iterations=2) # 腐蚀
dimg = cv2.dilate(img,kernel) #膨胀
dst1 = cv2.morphologyEx(img,cv2.MORPH_OPEN,kernel) #开运算(先腐蚀后膨胀)
dst2 = cv2.morphologyEx(img,cv2.MORPH_CLOSE,kernel) #闭运算(先膨胀后腐蚀)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值