随笔分类 - OpenCV
摘要:detect_blinks.py: #导入工具包 from scipy.spatial import distance as dist from collections import OrderedDict import numpy as np import argparse import time
阅读全文
摘要:detect_face_parts.py: #导入工具包 from collections import OrderedDict import numpy as np import argparse import dlib import cv2 #https://ibug.doc.ic.ac.uk/
阅读全文
摘要:multi_object_tracking_slow.py: #导入工具包 from utils import FPS import numpy as np import argparse import dlib import cv2 """ --prototxt mobilenet_ssd/Mob
阅读全文
摘要:utils_paths.py: import os image_types = (".jpg", ".jpeg", ".png", ".bmp", ".tif", ".tiff") def list_images(basePath, contains=None): # return the set
阅读全文
摘要:光流估计 光流是空间运动物体在观测成像平面上的像素运动的“瞬时速度”,根据各个像素点的速度矢量特征,可以对图像进行动态分析,例如目标跟踪。 - 亮度恒定:同一点随着时间的变化,其亮度不会发生改变。 - 小运动:随着时间的变化不会引起位置的剧烈变化,只有小运动情况下才能用前后帧之间单位位置变化引起的灰
阅读全文
摘要:背景建模 帧差法 由于场景中的目标在运动,目标的影像在不同图像帧中的位置不同。该类算法对时间上连续的两帧图像进行差分运算,不同帧对应的像素点相减,判断灰度差的绝对值,当绝对值超过一定阈值时,即可判断为运动目标,从而实现目标的检测功能。帧差法非常简单,但是会 引入噪音和空洞问题。 混合高斯模型 在进行
阅读全文
摘要:get_answer.py: #导入工具包 import numpy as np import argparse import imutils import cv2 # 设置参数 ap = argparse.ArgumentParser() ap.add_argument("-i", "--imag
阅读全文
摘要:train.py: import numpy import os from keras import applications from keras.preprocessing.image import ImageDataGenerator from keras import optimizers
阅读全文
摘要:Stitcher.py: import numpy as np import cv2 class Stitcher: #拼接函数 def stitch(self, images, ratio=0.75, reprojThresh=4.0,showMatches=False): #获取输入图片 (im
阅读全文
摘要:特征匹配 Brute-Force蛮力匹配 import cv2 import numpy as np import matplotlib.pyplot as plt %matplotlib inline img1 = cv2.imread('box.png', 0) img2 = cv2.imrea
阅读全文
摘要:图像特征-sift 图像尺度空间 在一定的范围内,无论物体是大还是小,人眼都可以分辨出来,然而计算机要有相同的能力却很难,所以要让机器能够对物体在不同尺度下有一个统一的认知,就需要考虑图像在不同的尺度下都存在的特点。 尺度空间的获取通常使用高斯模糊来实现 不同σ的高斯函数决定了对图像的平滑程度,越大
阅读全文
摘要:图像特征--harris角点检测 基本原理 cv2.cornerHarris() - img: 数据类型为 float32 的入图像 - blockSize: 角点检测中指定区域的大小 - ksize: Sobel求导中使用的窗口大小 - k: 取值参数为 [0,04,0.06] import cv2
阅读全文
摘要:scan.py: # 导入工具包 import numpy as np import argparse import cv2 # 设置参数 ap = argparse.ArgumentParser() ap.add_argument("-i", "--image", required = True,
阅读全文
摘要:myutils.py: import cv2 def sort_contours(cnts, method="left-to-right"): reverse = False i = 0 if method == "right-to-left" or method == "bottom-to-top
阅读全文
摘要:傅里叶变换 我们生活在时间的世界中,早上7:00起来吃早饭,8:00去挤地铁,9:00开始上班。。。以时间为参照就是时域分析。 但是在频域中一切都是静止的! https://zhuanlan.zhihu.com/p/19763358 傅里叶变换的作用 - 高频:变化剧烈的灰度分量,例如边界 - 低频
阅读全文
摘要:直方图 cv2.calcHist(images,channels,mask,histSize,ranges) - images: 原图像图像格式为 uint8 或 float32。当传入函数时应 用中括号 [] 括来例如[img] - channels: 同样用中括号括起来,它会告诉函数我们统幅图像的
阅读全文
摘要:模板匹配 模板匹配和卷积原理很像,模板在原图像上从原点开始滑动,计算模板与(图像被模板覆盖的地方)的差别程度,这个差别程度的计算方法在opencv里有6种,然后将每次计算的结果放入一个矩阵里,作为结果输出。假如原图形是AxB大小,而模板是axb大小,则输出结果的矩阵是(A-a+1)x(B-b+1)
阅读全文
摘要:图像轮廓 cv2.findContours(img,mode,method) mode:轮廓检索模式- RETR_EXTERNAL :只检索最外面的轮廓;- RETR_LIST:检索所有的轮廓,并将其保存到一条链表当中;- RETR_CCOMP:检索所有的轮廓,并将他们组织为两层:顶层是各部分的外部
阅读全文
摘要:图像金字塔 高斯金字塔 高斯金字塔:向下采样方法(缩小) 高斯金字塔:向上采样方法(放大) img=cv2.imread("AM.png") cv_show(img,'img') print (img.shape) 效果: up=cv2.pyrUp(img) cv_show(up,'up') pri
阅读全文
摘要:Canny边缘检测 使用高斯滤波器,以平滑图像,滤除噪声 计算图像中每个像素点的梯度强度和方向 应用非极大值(Non-Maximum Suppression)抑制,以消除边缘检测带来的杂散响应 应用双阈值(Double-Threshold)检测来确定真实的和潜在的边缘 双阈值检测 通过抑制孤立的弱边
阅读全文