草庐IT

基于opencv-mediapipe的手势识别

上一篇文章介绍了基于opencv的手势识别,如果大家运行了我的代码,会发现代码中找出手部轮廓的效果不是很理想。当时我在网上找寻解决的办法,刚好找到了mediapip库,然后我就利用opencv和mediapipe这两个库重新进行了手势识别的代码编写。效果还不错,写篇文章记录一下。1.mediapipe简介Mediapipe是google的一个开源项目,可以提供开源的、跨平台的常用机器学习(machinelearning)方案。Mediapipe实际上是一个集成的机器学习视觉算法的工具库,包含了人脸检测、人脸关键点、手势识别、头像分割和姿态识别等各种模型。由于我主要做的是手势识别,我就主要简单地

【ORB-SLAM3】CMake Error at CMakeLists.txt:37 (message): OpenCV > 2.4.3 not found.

项目场景:ZED2相机配置使用ORB-SLAM3ZED2相机配置使用ORB-SLAM3,出现关于opencv的报错问题描述CMakeErroratCMakeLists.txt:37(message):OpenCV>2.4.3notfound.原因分析:由于我的opencv是4版本的,而Cmakelist里面第33行找的是find_package(OpenCV3.0QUIET)也就是3版本的,所以找不到,因此而报错解决方案:将find_package(OpenCV3.0QUIET)改为find_package(OpenCV4.0QUIET)即可

OpenCV实战案例——车道线识别

目录一、首先进行canny边缘检测,为获取车道线边缘做准备二、进行ROI提取获取确切的车道线边缘(红色线内部)三、利用概率霍夫变换获取直线,并将斜率正数和复数的线段给分割开来四、离群值过滤,剔除斜率相差过大的线段五、最小二乘拟合,实现将左边和右边的线段互相拟合成一条直线,形成车道线六、绘制线段全部代码(视频显示)一、首先进行canny边缘检测,为获取车道线边缘做准备importcv2gray_img=cv2.imread('img.jpg',cv2.IMREAD_GRAYSCALE)canny_img=cv2.Canny(gray_img,50,100)cv2.imwrite('canny_i

【小案例:三】OpenCV弧长角度测量

1、二值化+查找轮廓img=cv2.imread('11.png')#cv2.imshow('src',img)gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)ret,thresh=cv2.threshold(gray,70,255,cv2.THRESH_BINARY)contours,hierarchy=cv2.findContours(thresh,cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_NONE)2、查找轮廓凸包缺陷,确定圆弧起点和终点坐标hull=cv2.convexHull(contours[0],returnPoint

计算机竞赛 深度学习YOLOv5车辆颜色识别检测 - python opencv

文章目录1前言2实现效果3CNN卷积神经网络4Yolov56数据集处理及模型训练5最后1前言🔥优质竞赛项目系列,今天要分享的是🚩**基于深度学习YOLOv5车辆颜色识别检测**该项目较为新颖,适合作为竞赛课题方向,学长非常推荐!🥇学长这里给一个题目综合评分(每项满分5分)难度系数:3分工作量:3分创新点:4分🧿更多资料,项目分享:https://gitee.com/dancheng-senior/postgraduate2实现效果3CNN卷积神经网络卷积神经网络(CNN),是由多层卷积结构组成的一种神经网络。卷积结构可以减少网络的内存占用、参数和模型的过拟合。卷积神经网络是一种典型的深度学习算

Opencv3.4.6+VS2019+win10安装教程

简介:以前装过Opencv,有时会忘记步骤,所以这次记录下这次安装过程,仅供参考。一、官网下载opencv官网链接:https://opencv.org/releases/进入可看到不同版本、不同系统的opencv,选择自己需要版本,我自己选择的是opencv-3.4.6点击下载windows版本,会跳到以下界面,等待5秒会自动下载。二、解压下载完成后,找到文件,双击打开文件解压文件,自己指定目录,一般放C盘之外其他盘,我是放在新建的D:\opencv3文件夹下。等待解压完成即可。三、配置环境变量找到解压时选定的文件夹打开,我的是D:\opencv3打开build文件下的x64\vc14\bi

opencv显示图片

 要使用OpenCV在Python中显示图像,您需要遵循以下步骤:1. 首先,确保已经安装了OpenCV。您可以使用以下命令安装OpenCV:```pip install opencv-python```2. 然后,编写一个简单的程序来读取并显示图像。以下是一个示例代码:```pythonimport cv2# 读取图像image = cv2.imread('example.jpg')# 显示图像cv2.imshow('Image', image)# 等待按键cv2.waitKey(0)# 关闭所有窗口cv2.destroyAllWindows()```在这个示例中,我们首先导入cv2模块。然

C++ opencv设置视频的捕获方式为 MJPG设置失败

我有一款4k摄像头,在设置分辨率为4k的时候总是出现帧率不够的情况,使用命令查看v4l2-ctl--device=/dev/video0--list-formats-ext发现v4l2-ctl--device=/dev/video0--list-formats-extioctl:VIDIOC_ENUM_FMT Type:VideoCapture [0]:'MJPG'(Motion-JPEG,compressed) Size:Discrete3840x2160 Interval:Discrete0.033s(30.000fps) Interval:Discrete0.040s(25.0

OpenCV之分水岭算法(watershed)

Opencv中watershed函数原型:voidwatershed(InputArrayimage,InputOutputArraymarkers); 第一个参数image,必须是一个8bit3通道彩色图像矩阵序列,第一个参数没什么要说的。关键是第二个参数markers,Opencv官方文档的说明如下:Beforepassingtheimagetothefunction,youhavetoroughlyoutlinethedesiredregionsintheimagemarkerswithpositive(>0)indices.So,everyregionisrepresentedason

opencv 矩阵运算

1.矩阵乘(*)Matmat1=Mat::ones(2,3,CV_32FC1); Matmat2=Mat::ones(3,2,CV_32FC1); Matmat3=mat1*mat2;//矩阵乘结果            2.元素乘法或者除法(mul)Matm=Mat::ones(2,3,CV_32FC1); m.at(0,1)=3; m.at(0,2)=6; m.at(1,0)=2; m.at(1,1)=4; m.at(1,2)=5; Matmat4=mat1.mul(m);//执行元素乘法或者除法结果3.向量的点积(dot)doubleret=mat1.dot(m);//计算两个向量的点积