![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
opencv
月下花弄影
登山,高一步则多一层境界
展开
-
从labelme到COCO数据格式,再到binary mask for instance
本博客试图解决以下问题完整代码可以直接下载使用:GitHub地址labelme的标注格式转到COCO的格式。 (对应labelme2coco.py)从COCO的instance segmentation 得到每一个instance 的 binary mask。(对应make_list.py)对binary mask resize 到指定大小 (并去掉那些比较小的mask)(对应change_size.py)一些要求安装labelme安装COCO dataset的依赖以及其他依赖,如cv原创 2020-09-09 17:44:43 · 743 阅读 · 0 评论 -
【python】频域滤波
频域滤波主要分为四个步骤1)计算源图像的傅里叶变换结果2)选择并计算滤波器3)将1得到的结果和2的结果相乘4)对3的结果进行逆傅里叶变换本文提供所有资源下载(自带图片):下载地址结果展示:代码1:计算滤波器import numpy as npdef high_pass_filter(img, radius=80): r = radius rows, co...原创 2019-05-29 17:25:29 · 6651 阅读 · 4 评论 -
【详解】CS231n assignment1KNN中不使用循环计算距离:从原理到程序
本文主要讲述不使用循环结构来计算两个矩阵的欧氏距离, 设训练集矩阵为train,size为num_train * num_features,设验证集矩阵为validate,size为num_test,num_features。因此我们计算每一个验证集样本到训练集样本的距离,就是将训练集矩阵train的某一行拿出来与验证集矩阵validate的某一行计算欧式距离。这在两层循环中就是这么做的,相比...原创 2018-12-08 13:13:20 · 1382 阅读 · 5 评论 -
【已解决】docker + opencv + 'ascii' codec can't encode charactersordinal not in range(128)
问题描述:1、在docker + opencv + 读取有名字中中文的图片2、python 3.6环境(不存在网上说的字符格式问题)最终原因定位:docker的问题。在docker中进行一定的修改即可修改如下:原文地址第一步:打开文件etc/profile 命令: vi etc/profile第二步:在文件最后一行添加:export LANG=“C.UTF-8”注使用vi的命令1...原创 2018-10-30 19:59:24 · 450 阅读 · 4 评论 -
【已解决】Python: Opencv: error: (-215) size.width>0 && size.height>0 in function cv::imshow
利用cv2.imread()时,当出现这个错误时,请检查以下信息:是否有拼写错误是否有这个图片是否添加了后缀名是否是绝对路径是什么系统?考虑将单斜杠改成双斜杠如:image_data = cv2.imread('D:\\lab\\AgriculturalDisease_trainingset\\images\\00c5c908-fc25-4710-a109-db143da23112...原创 2018-09-26 17:07:52 · 16814 阅读 · 2 评论 -
Python+opencv利用sobel进行边缘检测(细节讲解)
#! usr/bin/env python# coding:utf-8# 2018年7月2日06:48:35# 2018年7月2日23:11:59import cv2import numpy as npimport matplotlib.pyplot as pltimg = cv2.imread('number.jpg',0)# 其中,0表示将图片以灰度读出来。###...原创 2018-07-03 00:00:07 · 36776 阅读 · 11 评论 -
python+opencv均值滤波,高斯滤波,中值滤波,双边滤波
滤波算法主要包括均值滤波,高斯滤波,中值滤波和双边滤波。 每种算法都有自己的特点,建议从原理上了解每种算法的优缺点。上图给出简洁版的总结。 以下是代码:import numpy as npimport cv2import matplotlib.pyplot as plt######## 四个不同的滤波器 #########img = cv2.imread('cat...原创 2018-06-26 23:05:30 · 81239 阅读 · 24 评论 -
python+opencv自建二维滤波器进行卷积滤波
#! usr/bin/env python# coding: utf-8######## 自己创建一个二维卷积滤波器(5*5) #########import numpy as npimport cv2import matplotlib.pyplot as pltimg = cv2.imread('cat.jpg',0)kernal = np.ones((5,...原创 2018-06-26 23:00:32 · 3684 阅读 · 2 评论 -
python+opencv 利用canny进行边缘检测
# usr/bin/env python# coding:utf-8# 利用canny函数进行边缘检测# 2018年7月8日08:03:24import cv2import numpy as npimport matplotlib.pyplot as pltimg = cv2.imread('line.jpg',0)edges = cv2.Canny(img,100,...原创 2018-07-08 11:57:43 · 2055 阅读 · 0 评论 -
python+opencv图像变换的两种方法cv2.warpAffine和cv2.warpPerspective
# usr/bin/env python# coding: utf-8##################### 对图像进行变换(旋转)# 2018年6月17日07:33:54import cv2import numpy as np# 这里说一下旋转的opencv中为旋转提供的三个要素# 旋转的中心点(center)# 旋转角度()# 旋转后进行放缩# 我们可以通过...原创 2018-06-17 19:20:16 · 31725 阅读 · 7 评论 -
python+opencv 自适应阈值算法
简单阈值算法使用全局阈值,但一副图像中不同位置的光照情况可能不同,全局阈值会失去很多信息。本文介绍一下python+opencv中自适应阈值算法。 同样的,先列出大纲 以下直接比较两个自适应阈值算法与简单阈值算法。###########自适应阈值算法#! usr/bin/env python# coding: utf-8import matplotlib.pyplot as pl...原创 2018-06-24 16:20:53 · 6654 阅读 · 2 评论 -
python+opencv 简单阈值算法
本文先了解一个简单阈值函数,以了解一个阈值算法的具体参数。 然后比较不同阈值函数的区别。同样的,先用一副图说明本文重要大纲: #! usr/bin/env python# coding: utf-8import cv2img = cv2.imread('cat.jpg')img = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)# 先将图像矩阵进行...原创 2018-06-24 16:13:52 · 2841 阅读 · 0 评论 -
python+opencv:定义放缩图像尺寸的三种方法:元组,源图像,系数
# usr/bin/env python# coding: utf-8# 2018年6月15日23:29:13# 2018年6月16日10:16:49# python_5import cv2import numpy as npimg = cv2.imread('cat.jpg')# 对图像进行放缩# 第一种方法:直接指定使用元组指定新图像的尺寸resImg1 =...原创 2018-06-16 14:19:57 · 5036 阅读 · 0 评论 -
python+opencv颜色空间的转换命令与图像的按位与操作
# usr/bin/env python# coding: utf-8# 2018年6月15日07:41:23# 2018年6月15日23:16:01# python_4# 目标:# 1、学会进行颜色空间的转换,特别是两类重要的颜色空间转换,BGR到gray,BGR到Hsv# 这个目标可以利用一行代码解决# 颜色空间部分以后会讲到。# 2、在视频中追踪一个颜色的物体。步骤:...原创 2018-06-15 23:27:38 · 976 阅读 · 0 评论 -
python下读取并展示raw格式的图片
raw文件可能有些人没有,因此,先用一张图片创建一个raw格式的文件(其实可以是其他类型的格式文件)import numpy as npimport cv2img = cv2.imread('cat.jpg')# 这里需要我们在当前目录下放一张名为cat.jpg的文件img.tofile('cat.raw')#利用numpy中array的函数tofile将数据写入文件#这时我们...原创 2018-06-23 17:03:20 · 32194 阅读 · 32 评论 -
python+opencv计算代码运行时间:time库和opencv自带方法getTickCount
import cv2import time############################## 利用opencv的两个函数进行时间耗费计算# cv2.getTickCount()记录当前时间,cv2.getTickFrequency()是时钟周期start = cv2.getTickCount()# 记录当前时间,以时钟周期计算sum = 0for i in range(1...原创 2018-06-12 22:33:03 · 6405 阅读 · 0 评论 -
python+opencv像素的加减和加权操作
# 目标:# 1、在图像上进行算术操作,如加减以及按位操作# 2、将会学会使用cv2.add(),cv2.addWeights()# 参考网站:https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_core/py_image_arithmetics/py_image_arithmetics.html#image-arithmeticsim...原创 2018-06-12 21:38:52 · 2812 阅读 · 0 评论 -
分别利用opencv和matplotlib.pyplot来展示图片
众所周知,opencv是一个图像算法库,理论上讲我们应该使用opencv来展示图片,但本文要告诉你,什么时候我们使用matplotlib.pyplot来画图:需要对图像进行一些操作的时候(如看一下某些区域的位置等)# usr/bin/env python# coding: utf-8# 2018年6月11日23:17:03# 目的:比较两个展示图片的方式区别# import numpy ...原创 2018-06-11 23:40:11 · 1618 阅读 · 0 评论 -
opencv+python:图像的像素,属性,通道
本篇博客开始学习python下的opencv,欢迎志同道合的同学一起学习讨论。#! usr/bin/env python# coding:utf-8# for opencv# 2018年6月11日21:23:18# 参考网址:https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_core/py_basic_ops/py_basic_op...原创 2018-06-11 23:12:27 · 10246 阅读 · 0 评论