![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python_opencv
放下扳手&拿起键盘
学成文武艺,货卖帝王家。
展开
-
代码:批量图片格式转换(jpg->png)
import globimport osimport threadingfrom PIL import Imagedef create_image(infile, index): os.path.splitext(infile) im = Image.open(infile) im.save("./test_240/n00000010/images/n000000...原创 2018-05-17 22:29:34 · 3925 阅读 · 0 评论 -
代码:批量图片resize
from PIL import Imageimport os.pathimport glob #该方法返回所有匹配的文件路径列表(list)Datadir = "./initial_data/*.jpg"savedir = "./resize_240/images"def convertjpg(jpgfile,outdir,width=240,height=240): im...原创 2018-05-17 22:22:50 · 889 阅读 · 0 评论 -
python-opencv 读取视频
import cv2cap=cv2.VideoCapture("rtsp://admin:abcd1234@192.168.1.64:554//Streaming/Channels/1")#打开指定路径上的视频文件# cap=cv2.VideoCapture(0) #打开设备索引号对于设备的摄像头,一般电脑的默认索引号为0while (True): ret,frame=cap.re...原创 2018-03-22 09:14:31 · 5929 阅读 · 0 评论 -
图像的旋转
1.前言:对一个图像旋转角度θ,需要使用到下面形式的旋转矩阵。在opencv中,允许你在任意地方进行旋转,因此旋转矩阵可修改如下:其中:为了构建这个旋转矩阵M,opencv提供了函数:cv2.getRotationMatrix2D.2.代码实现:import cv2import numpy as npimg = cv2.imread('McGrady.jpg')rows,cols = i...原创 2018-03-18 22:39:25 · 261 阅读 · 0 评论 -
代码实现:基于opencv库的单目标跟踪算法
import cv2############################################################################### 载入视频camera = cv2.VideoCapture('tracking.avi')# 第一帧为空firstframe = Nonewhile True: # cap.read()返回两个参...原创 2018-03-22 16:03:09 · 1500 阅读 · 0 评论 -
图像的平移
1.前言:图像的平移就是将图像上的像素点整体移动。假设移动方向为(x,y),移动距离为(tx,ty),则移动矩阵M可构建如下:2.代码实现:import cv2import numpy as npimg = cv2.imread('McGrady.jpg')H = np.float32([[1,0,50],[0,1,0]]) #图像沿着x方向平移50,y方向为0.height,wid...原创 2018-03-18 21:33:21 · 2430 阅读 · 0 评论 -
cv2.resize()
1.简介:cv2.resize(src,dsize,dst=None,fx=None,fy=None,interpolation=None)scr:原图dsize:输出图像尺寸fx:沿水平轴的比例因子fy:沿垂直轴的比例因子interpolation:插值方法2.代码实现:import cv2import numpy as npimg = cv2.imread('McGrady.jpg')...原创 2018-03-18 20:52:39 · 71451 阅读 · 3 评论 -
对视频中的移动物体进行跟踪
前言:在HSV颜色空间中要比在BGR空间中更容易表示一个特定颜色。方法步骤:1.从视频中获取每一帧图像2.将图像颜色空间转换为HSV颜色空间3.设置HSV阈值到蓝色(跟踪色)范围4.获取蓝色物体代码如下:import cv2import numpy as npvidcap = cv2.VideoCapture('005.avi')success, frame = vidcap.read()...原创 2018-03-18 10:06:54 · 9580 阅读 · 0 评论 -
颜色空间转换
import cv2import numpy as npimg = cv2.imread('.\McGrady.jpg')img1 = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) #将原图的彩色BGR格式转换为灰度GRAY格式图像img2 = cv2.cvtColor(img,cv2.COLOR_BGR2HSV) #将原图的彩色BGR格式转换为彩色...原创 2018-03-16 22:28:08 · 304 阅读 · 0 评论 -
opencv 计时函数
import cv2import numpy as npimg = cv2.imread('.\McGrady.jpg')t1 = cv2.getTickCount() #开始计时for i in range(5,49,2): img = cv2.medianBlur(img,i)t2 = cv2.getTickCount() #计时结束t = (t2 - t1)/c...原创 2018-03-16 22:14:25 · 446 阅读 · 0 评论 -
ROI区域
前言:在图像处理中,我们常常需要设置感兴趣区域(ROI,region of interest),来专注或者简化工作过程。也就是从图像中选择一个图像区域,这个区域是图像分析所关注的重点。import cv2import numpy as npimg = cv2.imread('.\McGrady.jpg')num = img[208:261,235:390] #列表中第一个元素表示纵向像...原创 2018-03-16 22:00:56 · 3172 阅读 · 0 评论 -
opencv获取图像属性
图像属性包括:行、列、通道数,数据类型,像素数目。import cv2import numpy as npimg = cv2.imread('.\McGrady.jpg')print(img.shape) #获取图像的形状,返回值是一个包含行数、列数、通道数的元组。print(img.size) #获得图像的像素数目。print(img.dtype) #获得图像的数据类型。结果...原创 2018-03-16 21:19:28 · 9223 阅读 · 1 评论 -
Opencv获取图像上的像素值(win10系统)
前言:同上。1.代码:import cv2refPt=[]cropping=Falseimage=cv2.imread('E:\\Desktop\\01.jpg')def click_and_crop(event,x,y,flags,param): global refPt,cropping if event == cv2.EVENT_LBUTTONDOWN:原创 2018-01-10 16:23:56 · 636 阅读 · 0 评论 -
Opencv获取图像上的像素值(Ubuntu版)
前言:当需要制作自己的训练集的时候,标注图片上的检测目标,是一件比较耗时费力的事情。下面记录的就是其中一种方法。1.代码:import argparseimport cv2refPt=[]cropping=Falsedef click_and_crop(event,x,y,flags,param): global refPt,cropping if event原创 2018-01-10 16:00:18 · 1453 阅读 · 0 评论 -
Opencv(BGR)&Matplotlib(RGB)
import cv2import matplotlib.pyplot as pltimg = cv2.imread('motor.jpg')b,g,r = cv2.split(img)img2 = cv2.merge([r,g,b])# opencv读取的彩色图像是BGR格式,Matplotlib显示彩色图像是RGB格式。因此,通过plt显示时会有扭曲。plt.subplot(121);pl原创 2017-12-27 15:10:55 · 1431 阅读 · 0 评论 -
opencv读取、显示图片
import cv2#读取图片#参数:0表示读取黑白图像,1表示读取彩色图像。通常默认为1,可以省略。img=cv2.imread('E:\\python-opencv3\\test\\McGrady.jpg',1)#加载窗口cv2.namedWindow('McGrady',cv2.WINDOW_NORMAL)#显示图片cv2.imshow('McGrady',img)#当按下ES原创 2017-11-19 18:44:54 · 1771 阅读 · 0 评论