cV
  • 2024-09-30OPENCV判断图像中目标物位置及多目标物聚类
    文章目录在最近的项目中,又碰到一个有意思的问题需要通过图像算法来解决。就是显微拍摄的到的医疗图像中,有时候目标物比较偏,也就是在图像的比较偏的位置,需要通过移动样本,将目标物置于视野正中央,然后再次进行拍摄。就类似于下面的图像:基于这个需求,在图像上就需要使
  • 2024-09-27一次实践:给自己的手机摄像头进行相机标定
    目录1.问题引入2.准备工作2.1标定场2.2相机拍摄3.基本原理3.1成像原理3.2畸变校正4.标定解算4.1代码实现4.2详细解析4.2.1解算实现4.2.2提取点位4.3解算结果5.问题补充1.问题引入不得不说,现在的计算机视觉技术已经发展到足够成熟的阶段了,还记得笔者刚工作的时候,
  • 2024-09-27QT 获取视频帧Opencv获取清晰度
    先展示结果:1.获取摄像头的分辨率mResSize.clear();mResSize=camera_->supportedViewfinderResolutions();ui->comboBox_resulation->clear();inti=0;foreach(QSizemsize,mResSize){qDebug()<<msize;ui->comboBox_re
  • 2024-09-27OpenCV(cv::multiply())
    目录1.函数定义2.功能说明3.示例3.1基础逐元素相乘3.2带缩放因子的逐元素相乘3.3处理不同数据类型4.注意事项5.高级用法5.1使用掩码进行选择性相乘总结cv::multiply()是OpenCV库中用于对两个数组(通常是图像)的对应元素进行逐元素相乘的函数。1.函数定义namespa
  • 2024-09-27OpenCV视频I/O(2)视频采集类VideoCapture之检索视频流的各种属性函数get()的使用
    操作系统:ubuntu22.04OpenCV版本:OpenCV4.9IDE:VisualStudioCode编程语言:C++11算法描述返回指定的VideoCapture属性。VideoCapture的get()函数用于检索视频流的各种属性。这个函数允许你查询视频源的状态和配置,例如分辨率、帧率等。函数原型virtualdoublec
  • 2024-09-26cv_second step
    对图像的基础操作1.修改像素值importcv2importnumpyasnpimg=cv2.imread("test1.jpg")img[100,100]=[255,255,255]print(img[100,100])类似于矩阵中数据替换,但是这种方式很慢,能矩阵运算就不用循环。用.itemset()函数来修改importcv2importnumpyasnpi
  • 2024-09-26cv_first step
    先前操作导包用清华镜像源在Annacondapromots中Base环境下用pip命令pipinstallopencv-python-ihttps://pypi.tuna.tsinghua.edu.cn/simple下载cv包cv.__version__查看版号注意1.在同一文件夹下面,可以直接调用不写路径importcv2ascvimg=cv.imread("test1
  • 2024-09-26OpenCV(cv::mean())
    目录1.函数定义2.示例2.1计算灰度图像的平均值2.2计算彩色图像的每个通道的平均值2.3带掩码的平均值计算总结cv::mean()是OpenCV中用于计算图像的平均值的函数。它可以用于单通道图像、多通道图像(如彩色图像)、带掩码的图像等。1.函数定义Scalarcv::mean(InputArr
  • 2024-09-24非标独立设计选型--二十六--电磁阀的选型件算
    电磁阀:电磁控制---自动化的关键        PLC ----继电器----电磁阀----调速阀----气缸                供气源---    【电磁阀主要负责:换向,实现气缸的动作变化】电磁阀有哪些参数是会影响到使用的?    
  • 2024-09-24ARS展览项目(七)——C++多线程:Socket+表情识别整合
    说明一下我这边做表情识别和Socket,表情识别要实时,Socket要一直监听表情识别的结果,那么就只好用C++多线程来解决这个“两个功能一直并且同时运行”的问题。否则,如果是单线程的话,只能运行表情识别一段时间,切换发送一段时间,又切换回来,这样没有多线程好。还要说解决的难点写成多
  • 2024-09-24ARS展览项目(五)——表情识别测试
    这个表情识别项目的第三步下面是代码,作用是可以进行表情识别。本篇博客的实现方法参照了https://blog.csdn.net/zmdsjtu/article/details/53667929,这个很好用,感谢这位博主。#pragmacomment(linker,"/subsystem:windows/entry:mainCRTStartup")//去除CMD窗口#include<dlib/
  • 2024-09-24ARS展览项目(三)——识别面部得到特征点
    这个表情识别项目的第一步下面是代码,作用是识别出人脸,并且把人脸标记为68个特征点。然后把每次识别的一组(68个数据)保存在.txt文件里,一秒识别n次,那么一秒就生成n个txt本篇博客的实现方法参照了https://blog.csdn.net/zmdsjtu/article/details/53667929,这个很好用,感谢这位博主。
  • 2024-09-24ARS展览项目(七)——C-多线程:Socket-表情识别整合
    说明一下我这边做表情识别和Socket,表情识别要实时,Socket要一直监听表情识别的结果,那么就只好用C++多线程来解决这个“两个功能一直并且同时运行”的问题。否则,如果是单线程的话,只能运行表情识别一段时间,切换发送一段时间,又切换回来,这样没有多线程好。还要说解决的难点写成多
  • 2024-09-23多线程之手撕生产者-消费者
    要点维护一个资源(在生产者-消费者中即流水线的位置)池,实现put()/get()两个函数。由于对信号量的操作是互斥的,要引入条件变量和信号量。实现资源池类Pool,成员变量:mtx:mutexcv:condition_variableque:queuecapacity:int实现资源池类Pool,成员函数:Tget():获取
  • 2024-09-23OpenCV(cv::convertScaleAbs())
    目录1.函数定义2.原理3.示例4.参数作用详解4.1alpha的作用4.2beta的作用5.应用场景6.cv::convertScaleAbs()与cv::normalize()的区别总结cv::convertScaleAbs()是OpenCV中用于将图像像素值缩放并转换为8位无符号整数类型的函数。它常用于处理计算结果为浮点
  • 2024-09-23OpenCV(cv::Laplacian())
    目录1.函数定义2.拉普拉斯算子的原理3.示例4.应用场景总结cv::Laplacian()是OpenCV中用于计算图像拉普拉斯算子(Laplacian)的函数。拉普拉斯算子是一种边缘检测方法,它通过计算每个像素点的二阶导数来识别快速变化的区域(如边缘)。1.函数定义voidcv::Laplacian(In
  • 2024-09-22OpenCV(图像对比度)
    目录1.图像对比度2.对比度调整的原理3.示例4.调整对比度的效果1.图像对比度图像对比度是指图像中亮部和暗部之间的差异程度。对比度越高,亮区更亮,暗区更暗;对比度低时,亮区和暗区的差异不明显,图像显得平淡。2.对比度调整的原理图像对比度可以通过线性变换实现,公式如下:
  • 2024-09-22特征工程与交叉验证在机器学习中的应用
    数据入口:学生考试表现影响因素数据集-Heywhale.com本数据集提供了关于影响学生考试成绩的多种因素的全面概述。数据集包含了有关学习习惯、出勤率、家长参与、资源获取等方面的信息。数据说明字段名说明Hours_Studied每周学习的小时数Attendance出勤率(上课出席的百分比)Par
  • 2024-09-22OpenCV(图像饱和度)
    目录1.图像饱和度2.调整饱和度的基本原理3.示例3.1对RGB图像进行饱和度的调整。3.2对RGB图像进行饱和度的调整。4.调整饱和度的影响1.图像饱和度饱和度(Saturation)指的是颜色的纯度或浓度,决定了颜色的鲜艳程度。高饱和度的颜色看起来更加鲜艳,而低饱和度的颜色则显得
  • 2024-09-22OpenCV(cv::saturate_cast())
    目录1.函数定义2.为什么需要saturate_cast()?3.工作原理4.示例代码:4.1将浮点数转换为uchar4.2将负数转换为uchar4.3普通类型转换5.主要优点总结cv::saturate_cast()是OpenCV中一个非常重要的函数,它用于将一个值强制转换为指定类型,并确保值不会超出取值范围。它主
  • 2024-09-21基于OpenCV的单目测距
    随着计算机视觉技术的发展,单目测距作为一种重要的视觉测量手段,在众多领域得到了广泛的应用。本文将探讨基于OpenCV的单目测距原理、局限性、实际应用场景以及一些优化方案。单目测距的原理单目测距是指利用一台摄像机拍摄到的单一图像来进行距离测量的技术。与双目测距相比,
  • 2024-09-21OpenCV(cv::bitwise_not())
    目录1.函数定义2.工作原理3.示例cv::bitwise_not()是OpenCV中用于对图像或矩阵进行按位取反操作的函数。它将输入图像的每个像素的值进行按位反转,生成输出图像。按位取反是对每个位进行反转,即将二进制数中的0变为1,1变为0。1.函数定义voidcv::bitwise_not(Inpu
  • 2024-09-20OpenCV(cv::equalizeHist())
    目录1.函数定义2.函数原理3.示例4.应用场景5.注意事项6.实际效果cv::equalizeHist()是OpenCV中用于图像直方图均衡化的函数。该函数主要用于增强图像的对比度,尤其是在图像的光照条件不均匀或整体对比度较低的情况下,直方图均衡化可以有效改善图像的细节。1.函数定
  • 2024-09-20OpenCV(cv::divide())
    目录1.函数定义2.工作原理3.示例3.1矩阵除法3.2矩阵和标量的除法3.3使用缩放因子4.注意事项5.应用场景cv::divide()是OpenCV中用于执行数组或标量的逐元素除法操作的函数。它允许对矩阵进行元素级的除法操作,支持两种使用方式:矩阵与矩阵之间的除法,或矩阵与标量之间的
  • 2024-09-19OpenCV(cv::Sobel())
    目录1.函数定义2.工作原理2.1Sobel核2.2计算过程(1)x方向的Sobel卷积计算(2)y方向的Sobel卷积计算(3)合并x和y方向的梯度2.3示例3.示例4.使用场景总结cv::Sobel()是OpenCV中用于计算图像的梯度(边缘)的常用函数之一。它实现了Sobel滤波器,这是一种常见