随笔分类 - opencv
摘要:关于LeNet5 LeNet-5是一个简单的卷积神经网络,是用于手写字体的识别的一个经典CNN 前向传播过程如下: INPUT层这是神经网络的输入,输入图像的尺寸统一为32×32。 C1层输入图片:32×32 卷积核大小:5×5 卷积核种类:6 输出feature map大小:28×28 神经元数量
阅读全文
摘要:最近做一个车牌识别项目,入门级别的,十分简单。 车牌识别总体分成两个大的步骤: 一、车牌定位:从照片中圈出车牌 二、车牌字符识别 这里只说第二个步骤,字符识别包括两个步骤: 1、图像处理:原本的图像每个像素点都是RGB定义的,或者称为有R/G/B三个通道。在这种情况下,很难区分谁是背景,谁是字符,所
阅读全文
摘要:最近在研究人工智能和图像识别技术,涉及到一个车牌号码识别的研究,网上查找到的方案有tensorflow和opencv,opencv也是比较成熟的方案,先从简单的开始,以下是关于使用opencv实现车牌号码提取的部分。 说明 本文是我学习过程的笔记,在某些的场景下的识别率较高,但是不足以在实际的商业环
阅读全文
摘要:一、编译前的准备 1.安装依赖 sudo apt-get install build-essential sudo apt-get install libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev sudo
阅读全文
摘要:原文地址:https://www.learnopencv.com/deep-learning-based-human-pose-estimation-using-opencv-cpp-python/ COCO输出格式: 鼻子– 0,脖子– 1,右肩– 2,右肘– 3,右腕– 4,左肩– 5,左肘–
阅读全文
摘要:原图 1. 2. 3. 4. 由上面四种旋转可以组合出, 顺时针旋转90度 逆时针旋转90度
阅读全文
摘要:# coding:utf-8 import cv2 import argparseimport numpy as np parser = argparse.ArgumentParser(description='manual to this script') parser.add_argument("--videoOrImage", default=0) args = parser.pars...
阅读全文
摘要:原图: 开运算: 先腐蚀后膨胀叫开运算(因为先腐蚀会分开物体,这样容易记住),其作用是:分离物体,消除小区域。这类形态学操作用cv2.morphologyEx()函数实现: 下面两份代码分别对应通过先腐蚀后膨胀的效果 和 直接通过开运算的效果 可以看到两者差别不大。 闭运算 先膨胀后腐蚀(先膨胀会使
阅读全文
摘要:1.腐蚀 腐蚀的效果是把图片"变瘦",其原理是在原图的小区域内取局部最小值。因为是二值化图,只有0和255,所以小区域内有一个是0该像素点就为0: 这个核也叫结构元素,因为形态学操作其实也是应用卷积来实现的。结构元素可以是矩形/椭圆/十字形,可以用cv2.getStructuringElement(
阅读全文
摘要:坐标体系中的零点坐标为图片的左上角,X轴为图像矩形的上面那条水平线;Y轴为图像矩形左边的那条垂直线。X,Y均为正数,该坐标体系在诸如结构体Mat,Rect,Point中都是适用的。 绘制图片
阅读全文
摘要:from PIL import ImageGrab import numpy as np import cv2 p = ImageGrab.grab()#获得当前屏幕 k=np.zeros((200,200),np.uint8)#清零 a,b=p.size#获得当前屏幕的大小 fourcc = cv2.VideoWriter_fourcc(*'XVID')#编码格式 video = cv2.Vid
阅读全文