OpenCV-Python
最强大的计算机视觉辅助库,你值得拥有 ( ̄. ̄)+
JNingWei
工作后比较忙,不怎么看账号和消息。回复不及时望见谅。
展开
-
macOS: 安装opencv3
上网搜了很多教程,都没能安装成功,直到在这篇博客的指引下,总算在mac上装成了opencv。Tutorial下载和安装首先执行以下三条指令:brew install opencv3 --with-python3 --c++11 --with-contrib brew link --force opencv3 brew unlink opencv3 &&...原创 2018-04-10 22:12:14 · 2777 阅读 · 0 评论 -
【opencv】安装opencv
安装根据实际安装需要,选择 “仅安装python接口” 或 “同时安装python/c++接口” 其中一种即可。仅安装python接口仅支持TensorFlow、PyTorch,不支持Caffe。pip install opencv-python若pip不能正常使用,则去 清华大学镜像站 中找到最新版的opencv包(.whl文件),下载之。直接pip install下好的安装包p...原创 2020-03-15 15:19:20 · 241 阅读 · 0 评论 -
opencv: 合成视频
Template# 用list记录图片地址src_paths = [os.path.join(SRC_FOLDER, path) for path in os.listdir(SRC_FOLDER) if path.endswith(".png")]# 一定要记得 sort() !src_paths.sort()# 配置cv2.VideoWriter参数sample_img ...原创 2018-04-15 21:45:17 · 1105 阅读 · 0 评论 -
opencv: cv2.applyColorMap 伪色彩
用途在图像处理中,伪色彩用途广泛。在OpenCV库中,常见的伪色彩模式都可通过 cv2.applyColorMap(src, userColor[, dst]) 直接调用,很是方便快捷。例如伪色彩中的 COLORMAP_JET模式,就常被用于生成我们所常见的 热力图: Syntax cv2.applyColorMap(src, userColor[, dst]) Arg...原创 2017-12-14 16:12:19 · 28081 阅读 · 2 评论 -
opencv: cv2.rectangle 通过确定对角线 画矩形
疑问在做项目的过程中,标记数据是记录每个 bounding box 的左上角和右下角坐标。因为用到了数据增强,所以我有了一个疑虑:将标记数据翻转后输入 cv2.rectangle ,此时输入格式已不再是 cv2.rectangle(image, 左上角坐标, 右下角坐标, color) ,而是变成了诸如 cv2.rectangle(image, 左下角坐标, 右上角坐标, color) ...原创 2017-12-09 09:34:21 · 37068 阅读 · 0 评论 -
opencv: cv2.flip 图像翻转 进行 数据增强
Syntax flip(src, flipCode[, dst])args flipCode Anno 1 水平翻转 0 垂直翻转 -1 水平垂直翻转DemoOriginal Image 原图像: Flipped Horizontally 水平翻转: Flipped Vertically 垂直翻转原创 2017-12-08 17:07:40 · 81038 阅读 · 12 评论 -
opencv: 图片 设置 透明度 并 叠加(cv2.addWeighted)
API cv2.addWeighted(src1, alpha, src2, beta, gamma[, dst[, dtype]]) → dst.其中,alpha 为 src1 透明度,beta 为 src2 透明度.效果图原图底板图案 elegent.jpg : 上层图案 lena.jpg : 叠加效果(2:8)叠加图案 overlap(2:8...原创 2017-10-15 17:09:06 · 41867 阅读 · 8 评论 -
opencv: 绘制矩形轮廓框,并记录轮廓框坐标
步骤简述使用OpenCV绘制矩形轮廓框,一般包括如下步骤:转换为灰度图;进行阈值处理;进行中值滤波;在原始图像上绘制矩形框。附图解析原始图像: 第一步,转换为灰度图: 第二步,经过阈值处理: 第三步,中值滤波后: 最后一步,在原始图像上绘制矩形框: 生成的记录文件(矩形轮廓框四个端点的平面坐标)1: [367,201 367,210 ...原创 2017-10-14 11:25:30 · 10627 阅读 · 5 评论 -
opencv: 图像缩放(cv2.resize)
Syntax cv2.resize(src, dsize[, dst[, fx[, fy[, interpolation]]]]) → dst interpolation 选项 所用的插值方法 INTER_NEAREST 最近邻插值 INTER_LINEAR 双线性插值(默认设置) INTER_AREA 使用像素区域关系进行重采样。 ...原创 2017-10-12 19:43:02 · 264817 阅读 · 13 评论 -
opencv: 视频中提取帧图片并保存(cv2.VideoCapture)
Code因为工作需要,写了一段代码用于在视频中提取帧图片:# coding=utf-8# 全局变量VIDEO_PATH = './1.avi' # 视频地址EXTRACT_FOLDER = './extract_folder' # 存放帧图片的位置EXTRACT_FREQUENCY = 100 # 帧提取频率def extract_frames(video_path, ds...原创 2017-09-06 17:22:54 · 20091 阅读 · 3 评论 -
opencv: 颜色空间转换(cv2.cvtColor) 探究(图示+源码)
API Definition我们从 OpenCV官网 的Miscellaneous Image Transformations 上,可查到 cv2.cvtColor 这个api的定义如下: cvtColor Converts an image from one color space to another. C++: void cvtColor(InputArra...原创 2017-08-30 20:59:27 · 40843 阅读 · 6 评论 -
opencv: 轮廓绘制 详细拆解(图示+源码)
过程图解第一步读取要进行处理的原图:origin_pic = './pic/6.jpg'save_folder = './generated_pics'img = cv2.imread(origin_pic)此时原图如下: 第二步将原图转换成单通道图(例如本例中用cv2.cvtColor转换成灰度图):imgray = cv2.cvtColor(src=img,...原创 2017-08-31 15:14:40 · 1201 阅读 · 0 评论 -
opencv: 旋转图片
Templateimport cv2img = cv2.imread("./origin.jpg")h, w = img.shape[:2]center = (w // 2, h // 2)M = cv2.getRotationMatrix2D(center, 45, 0.5)rotated = cv2.warpAffine(img, M, (w, h))cv2.imwri...原创 2018-03-18 17:58:50 · 15745 阅读 · 0 评论 -
opencv: 阈值处理(cv2.threshold) 探究(图示+源码)
cv2.threshold 探究API定义:OpenCV 3.2.0 中,阈值处理的 api 定义如下: cv2.threshold (src, thresh, maxval, type)即: cv2.threshold (源图片, 阈值, 填充色, 阈值类型)Args:src:源图片,必须是单通道thresh:阈值,取值范围0~255...原创 2017-08-31 15:53:24 · 48421 阅读 · 4 评论 -
opencv: 形态学 转换(图示+源码)
综述OpenCV中的形态学转换操作有七种:腐蚀,膨胀,开运算,闭运算,形态学梯度,礼帽,黑帽。API参照表 中文名 英文名 api 原理 个人理解 腐蚀 erode erosion = cv2.erode(src=girl_pic, kernel=kernel) 在窗中,只要含有0,则窗内全变为0,可以去浅色噪点 浅色成分被腐蚀 ...原创 2017-07-26 09:38:49 · 2506 阅读 · 2 评论 -
opencv: Canny边缘检测(图示+源码)
综述:Canny 边缘检测是一种非常流行的边缘检测算法。滞后阈值参照表: 图像的灰度梯度 判定结果 > maxVal 真的边界 < minVal 非边界 minVal < … < maxVal 如果这个点是否与某个被确定为真正的边界点相连,就认为它也是边界点,如果不是就抛弃实验思路:设置对照试验,...原创 2017-07-25 20:04:35 · 4453 阅读 · 1 评论 -
opencv: 颜色通道 探究(图示+源码)
起因: 大家都知道的,在OpenCV中,图像都是按 BGR 的 颜色通道顺序 来进行处理的。在自学OpenCV的过程中,我对 拆分和合并颜色通道 起了兴趣。自己写了一些代码来验证自己的思路。实验思路:分别将三个通道的矩阵数值取出;保留单色通道,其他通道全部置0,以显示 单色 图片的效果;保留双色通道,剩余一个通道置0,以显示 混合双色 图片的效果;保留全部三个颜色通道,重新编排颜色通道顺序原创 2017-07-25 15:16:44 · 3628 阅读 · 2 评论 -
opencv: cv2.resize 探究(源码)
我们 习惯的坐标表示 是 先 x 横坐标,再 y 纵坐标。在图像处理中,这种惯性思维尤其需要担心。 因为在计算机中,图像是以矩阵的形式保存的,先行后列。所以,一张 宽×高×颜色通道=480×256×3 的图片会保存在一个 256×480×3 的三维张量中。图像处理时也是按照这种思想进行计算的(其中就包括 OpenCV 下的图像处理),即 高×宽×颜色通道。 但是问题来了,cv2.resize原创 2017-07-24 14:02:50 · 22945 阅读 · 0 评论 -
opencv: 获取 图像属性 (源码)
综述: 图像属性包括:行,列,通道,图像形状,图像数据类型,像素数目等。 api return .shape 图像形状 .size 像素数目 .dtype 图像数据类型自己写的试验代码如下:# -*- coding: utf-8 -*-import cv2pic = cv2.imread('../pic/girl.jpg')print ('pic.shape = {原创 2017-07-25 15:32:09 · 1975 阅读 · 1 评论 -
bash: 一键安装OpenCV (with Python3)
一键 安装OpenCV 的 bash文件 源码:echo 'Remove old version packages'sudo apt-get -y remove ffmpeg x264 libx264-devecho -e 'Install Dependencies'sudo apt-get -y install libopencv-devsudo apt-get -y install bu原创 2017-07-29 16:52:26 · 910 阅读 · 0 评论 -
opencv: 安装 & 可能遇到的问题 & 解决方案
OpenCV安装 参照官网安装教程即可,其他任何的个人安装攻略都只能是辅助参考。盲从有风险,安装需谨慎。安装中可能遇到的问题 装了N次OpenCV,遇坑无数:Problem_0 apt-get 下不了。Solution 用aptitude下。Problem_1 ffmpeg下不到。Solution 下载 ffmpeg 压缩包,在终端下解压即可。无需制定目录,也无需再复制转移。Proble原创 2017-06-27 18:51:01 · 1402 阅读 · 0 评论