![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
openCV
AI剑客
计算机视觉方向:图像及视频处理
展开
-
opencv之remap() python
一,remap()图像的重映射,可以把一幅图像中某位置的像素放置到另一个图片指定位置的过程。可以实现图像的变形,扭曲,反转等操作。实现图像数据的增强,提升深度模型的泛化能力。可以根据自己设定的函数将图像进行变换,较常见的功能有关于x轴翻转,关于y轴翻转,关于x、y轴翻转;(仿射变换在图像处理中的主要功能为:对图像进行缩放、旋转、平移、扭曲等)二,为了完成映射过程, 我们需要获得一些插值为非整数像素的坐标,因为源图像与目标图像的像素坐标不是一 一对应的。三,remap函数def remap(src, m原创 2020-05-09 17:16:51 · 10084 阅读 · 2 评论 -
python+opencv+摄像头录制视频文件
# coding:utf-8import cv2import numpy as np"""函数名:cv2.VideoCapture()功 能:通过摄像头捕获实时图像数据返回值:有参数一:摄像头代号,0为默认摄像头,笔记本内建摄像头一般为 0 或者填写视频名称直接加载本地视频文件"""cap = cv2.VideoCapture(0) # 创建一个 VideoC...原创 2020-04-06 11:19:20 · 1089 阅读 · 0 评论 -
Delaunay Triangulation-狄洛尼三角剖分
一,狄洛尼三角剖分1.1 三角剖分(triangulation)给定平面上的一组点,将平面细分成以这些点为顶点的三角形。假设V是二维实数域上的有限点集,边e是由点集中的点作为端点构成的封闭线段,E为e的集合。那么该点集V的一个三角剖分T=(V,E)是一个平面图G,该平面图满足条件:(1)除了端点,平面图中的边不包含点集中的任何点。(2)没有相交边。(3)平面图中所有的面都是三角面,且所...原创 2020-03-24 21:12:07 · 5427 阅读 · 0 评论 -
opencv之图像平滑操作
1.cv2.blur(img, (3, 3)) 进行均值滤波参数说明:img表示输入的图片, (3, 3) 表示进行均值滤波的方框核大小cv2.boxfilter(img, -1, (3, 3), normalize=True) 表示进行方框滤波,参数说明当normalize=True时,与均值滤波结果相同, normalize=False,表示对加和后的结果不进行平均操作,大于255的使...原创 2020-03-21 09:16:29 · 323 阅读 · 0 评论 -
OpenCV之seamlessClone泊松融合及mask目标几何中心的计算
一张图像作为背景,另外一副图像作为目标,要叠在背景上,为了融合入背景,可以使用泊松融合。一,泊松融合output = cv2.seamlessClone(src, dst, mask, center, flags)1.src 目标影像。2.dst 背景图像。3.mask 目标影像上的mask,表示目标影像上那些区域是感兴趣区域。如果只对飞机感兴趣,那么mask上就只有飞机所在的区域。4...原创 2020-03-20 22:24:40 · 3445 阅读 · 2 评论 -
python+opencv+dlib实现人脸检测与表情识别
python+opencv+dlib实现人脸检测与表情识别一,dlib简单介绍:Dlib包含广泛的机器学习算法。所有的设计都是高度模块化的,快速执行,并且通过一个干净而现代的C ++ API,使用起来非常简单。它用于各种应用,包括机器人技术,嵌入式设备,手机和大型高性能计算环境。二,识别规则:1、嘴巴张开距离占面部识别框宽度的比例越大,说明情绪越激动,可能是非常开心,也可能是非常惊讶。2...原创 2020-03-15 21:05:39 · 6872 阅读 · 51 评论 -
python+opencv实现人脸识别
python+opencv实现人脸识别步骤:1.人脸检测并建立数据集2.利用数据集,训练分类器3.实现人脸识别特别注意: LBPH 产生评分不同,低于50是可靠的 高于80是不可靠的(网上许多是错误的)4.效果确认# 收集数据import cv2# def pic(cam):def pic(): # 调用笔记本内置摄像头,所以参数为0,如果有其他的摄像头可以调整参数为...原创 2020-03-14 11:48:51 · 732 阅读 · 0 评论 -
opencv-python与opencv-contrib-python的区别
1.opencv-python包含opencv的主模块。下载地址https://pypi.org/project/opencv-python/#files2.opencv-contrib-python属于加强版,除了主模块,还包含一些增强模块及以下测试的新算法,验证成熟后,再加入主模块。下载地址https://pypi.org/project/opencv-contrib-python/...原创 2020-03-09 20:22:52 · 7102 阅读 · 0 评论 -
windows下opencv4.2.0编译安装
1.下载Cmakehttps://cmake.org/download/2.下载opencv4.2.0https://opencv.org/releases/3.下载opencv_contrib模块https://github.com/opencv/opencv_contrib4.编译设定:重点:设置地址不要复制,要用图形界面选择路径5.alarm的结解除-download...原创 2020-03-08 20:55:19 · 681 阅读 · 0 评论 -
opencv4.2.0(支持CUDA加速)源码及执行文件下载
opencv4.2.0(支持CUDA加速)源码及执行文件下载https://opencv.org/releases/原创 2020-03-08 12:12:41 · 780 阅读 · 0 评论 -
opencv自带计算网络的推理时间
t, _ = self.pose_net.getPerfProfile() #总的次数freq = cv2.getTickFrequency() / 1000 # 用于返回CPU的频率 次/s 除以1000,得到次/mstime = t / freq #总次数/频率=时间原创 2020-03-04 23:00:29 · 628 阅读 · 0 评论 -
openpose操作(四)-关键点检测
threshold = 0.1part = 1probMap = output[0, part, :,:]mapSmooth = cv2.GaussianBlur(probMap, (3, 3), 0, 0)mapMask = np.uint8(mapSmooth > threshold)plt.subplot(1, 3, 1)plt.imshow(probMap)plt.t...原创 2020-02-29 20:32:49 · 4427 阅读 · 1 评论 -
openpose实操(三)基于OpenCV使用OpenPose进行多个人体姿态估计
OpenPose 的 OpenCV DNN 实现一,模型加载1.建模,cv2.dnn.readNetFromCaffe(),需要两个参数,模型结构文件prototxt,及模型权重文件caffemodel。2.cv2.dnn.blobFromImage用于把image转成网络输入的blob。3.net.setInput() blob输入网络模型4.output = net.forward(...原创 2020-02-29 18:18:47 · 2123 阅读 · 0 评论 -
Open CV直接根据tensorflow模型pb文件,进行推断
open cv从3.3版本开始正式支持DNN,可以直接导入caffe、tensorflow等框架训练好的模型,进而完成识别、检测等任务,方便终端部署。第一步:加载pb模型数据,生成netnet = cv.dnn.readNetFromTensorflow(“graph_opt.pb”)第二步:给模型输入图像,使用blobFromImage函数,将图片转换成blob格式。net.setI...原创 2020-02-12 17:52:30 · 2575 阅读 · 1 评论 -
图像分割后图像优化之填孔
图像分割后图像优化之填孔下面是灰阶图像的填孔处理,填孔的大小可以用过面积控制。def FillHole3(imgPath, SavePath): filename = imgPath img = cv2.imread(filename, 0) img = cv2.bitwise_not(img) print(np.shape(img)) kern...原创 2019-11-20 20:01:54 · 694 阅读 · 0 评论 -
图像分割后端图片的处理之小噪点去除
图像分割后端图片的处理之小噪点去除:主要使用了openCV的connectedComponentsWithStats函数connectedComponentsWithStats()创建了一个标记图(不同连通域使用不同的标记,和原图宽高一致)除此之外,还可以返回每个连通区域的重要信息–bounding box, area, and center of mass(centroid).如果不需要连通...原创 2019-11-19 21:15:45 · 2911 阅读 · 0 评论 -
opencv image进行二值化的操作总结
opencv image进行二值化的操作总结# 二值化处理,低于阈值的像素点灰度值置为0;高于阈值的值置为参数3ret, thresh1 = cv2.threshold(grayImage, 127, 255, cv2.THRESH_BINARY)cv2.imshow('BINARY', thresh1)# 大于阈值的像素点灰度值置为0;小于阈值置为参数3ret, thresh2...原创 2019-11-19 20:33:32 · 291 阅读 · 0 评论