- 博客(289)
- 资源 (3)
- 收藏
- 关注

原创 面经总目录——持续更新中
本面经总结了校招时我面试各个公司的面试题目,每场面试后我都及时进行了总结,同时后期补充扩展了同类型的相近面试题,校招时从两个方向进行投递,和(C++方向),所以我都整理了两个岗位的相关面试题,大家可以根据需要所取。面经目前包含:C++语言面试题、Python语言面试题、Qt、YOLO算法、OpenCV、K-means、Dropout、BN、NMS、IOU、数据增强、模型优化、计算机网络和通讯协议相关面试题、CV基础等等,同时还包含中一些常见的面试题。
2025-05-20 20:47:10
992

原创 海康威视工业相机SDK二次开发(VS+Opencv+QT+海康SDK+C++)(二)
本文接上次的博客海康威视工业相机SDK二次开发(VS+Opencv+QT+海康SDK+C++)(一),上个博客中并未用到QT,本文介绍项目内容及源码,供大家参考。由于我的项目中是用海康相机作为拍照的一个中介,重点是在目标识别方向,请阅读源码时自动忽略。如果对目标识别感兴趣,可以参考我的YOLO系列https://blog.csdn.net/qq_45445740/category_9794819.html目录1.说明1.1 环境配置1.2 背景说明2.源码MvCamera.hmythread.
2021-02-28 11:47:47
25339
930

原创 海康威视工业相机SDK二次开发(VS+Opencv+QT+海康SDK+C++)(一)
最近在做一个项目,涉及到工业相机,需要对其进行二次开发。相机方面选择了海康威视,网上关于海康威视工业相机SDK的开发资料很少,自己也摸索了一段时间,请教大佬,终于有了些收获,记录下来,方面以后查阅。目录1.说明1.1软硬件相关配置1.1.1硬件选择1.1.2软件选择1.2关于安防相机与工业相机1.说明1.1软硬件相关配置1.1.1硬件选择工业相机我选择的是海康威视的,具体的参数如下:工业相机资料:https://c109334.hi1718.com/news/201831317343619.
2020-11-10 14:01:55
35141
64

原创 《Python神经网络编程》自己动手编写一个神经网络
最近在看一些经典论文,想要动手复现其中的代码,无奈自己水平过于低,总感觉对于神经网络的理解不够深入,于是想补一下相关的知识。便找到了《Python神经网络编程》这本书,若稍微有些基础看起来很快,看完之后给我的感觉是对于神经网络的基本知识、神经网络背后的核心思想有了更深的理解,及时记录下来,方便自己学习。首先附上这本书的PDF与相关资源链接:https://pan.baidu.com/s/1lcVimFBDDCYGTIi6xzxV_g提取码:oiv7...
2020-06-15 17:57:48
12240
14
原创 基于深度掩码的动态模糊处理
在3D视觉场景识别中,因为有深度信息,可以对背景进行处理,将前后景进行分割,背景模糊处理,可以减少目标检测的误识别,同时过滤掉无效的图像信息。
2025-09-04 16:13:06
73
原创 九点标定实现
在机器人视觉应用中,手眼标定是一个很重要的过程,本篇介绍的是2D平面的手眼标定,本质是将相机视野内的像素坐标信息(x,y)映射到机器人的XY位置中。
2025-09-01 09:13:24
889
原创 【ArUco boards】标定板获取指定角点的像素坐标
在这篇博文中,记录的是通过ArUco boards识别出相对于相机的6D位姿态,前提是需要知道相机的内参信息。今天在做九点标定时,需要输入一组相机识别到的目标点像素坐标,因为当前手上只有arucoboard,为了偷懒试了下确实可以检测任意一个角点的像素坐标。
2025-09-01 08:49:59
848
原创 代码性能测试——benchmark库
在平常的代码开发中,我们一般用googletest做单元测试用例,如果需要对代码如某个函数的执行时间或效率进行测量,一般用benchmark。
2025-08-24 22:39:55
1288
原创 Ubuntu22.04系统源码编译librealsense-2.56.3
如果是Python调用RealSense相机,可以通过安装,然后直接调用,考虑到C++也需要使用,需要对源码进行编译。
2025-08-24 11:07:08
392
原创 RK3588开发板Ubuntu系统烧录
文章中给出了通过ARM设备上面的NPU进行深度学习的模型推理过程,在此之前,我们在收到一块全新的rk3588开发板后,需要对其进行系统的烧录,这里以Ubuntu22.04系统为例。
2025-08-17 21:22:17
146
原创 报错:c++: fatal error: Killed signal terminated program cc1plus
c++: fatal error: Killed signal terminated program cc1plus
2025-08-05 09:57:11
409
原创 面试问题总结——关于OpenCV(二)
OpenCV图像处理常见面试题解析 本文整理了10个OpenCV相关的重要面试问题,涵盖像素梯度计算、形态学运算、图像插值、边缘检测等核心知识点。主要内容包括:Sobel算子计算像素梯度的原理;开运算和闭运算的作用及优缺点对比;三种图像插值方法的特性比较;Canny边缘检测的多步优化原理;霍夫圆变换的实现步骤;高斯滤波去噪机制;仿射变换与透视变换的区别;以及cv::Mat的内存管理机制和内存泄漏解决方案。这些知识点对视觉算法工程师面试具有重要参考价值,既包含基础理论也涉及实际应用场景分析。
2025-07-26 22:28:39
467
原创 YOLOv8中添加SENet注意力机制
注意力机制(AttentionMechanism)是深度学习中的一种方法,在图像处理领域,尤其是在卷积神经网络(CNN)和视觉Transformer等架构中。图像数据具有局部相关性,注意力机制可以帮助模型聚焦于图像中更重要的区域,从而提升处理效果。Network)是一种用于提高卷积神经网络(CNN)性能的结构,通过引入注意力机制,使得网络能够自适应地重新标定各个通道的重要性。
2025-07-19 22:32:18
130
原创 yolov8seg如何获取每个结果的mask,不是一整个的mask
使用rk3588开发板对yolov8-seg进行推理时,瑞芯微官方代码中对推理的结果进行了封装,返回的分割结果是所有目标的mask,而不是单个目标的mask。
2025-07-06 15:09:55
71
原创 关于cv::solvePnP算法的理解
这里我们将solvePnP算法应用于aruco标记的位姿估计中,实际我们使用的是2D工业相机,拍摄了多组标记如Charuco或者ArucoBoard,这些标记都是已知实际物理尺寸的,所以标记上的每个aruco相对于标记原点即物体坐标系的3D坐标都是已知的,记为;根据拍摄的图像通过模板匹配或角点检测算法都可以已知图像中每个aruco的像素坐标。最终我们需要求得的是相机的外参,即标记相对于相机坐标系的位姿关系,记为。1.刚体变换:这里假设是已知的,将标记中每个aruco的位姿从基于物体坐标系。
2025-06-14 22:23:49
1517
1
原创 面试问题总结——关于C++(四)
在 C++ 中,析构函数通常应该是虚函数,特别是在基类中。如果一个类有虚函数,并且希望派生类能够正确地析构,那么基类的析构函数应该被声明为虚函数。如果基类的析构函数是虚拟的,当通过基类指针删除派生类对象时,派生类的析构函数将被调用,确保派生类的资源得到释放。在构造函数执行时,类的派生部分还没有被完全构造,因此无法调用派生类的虚函数。如果在构造函数中声明虚函数,编译器会忽略它,而调用的是基类的构造函数版本。虽然C++允许在类中定义虚函数,但构造函数的设计与虚函数有所不同。C++主要有3种智能指针(位于。
2025-06-14 22:05:40
405
原创 【职场生存必修课】50个关键场景应对指南:面试、沟通、晋升、心态调整全涵盖
1.靠谱的交付能力2.快速学习的能力3.共情的沟通能力4.心态调节能力切记:一定要先找+1领导进行沟通,表明自己是在意的,说下自己的想法并且让领导给出些意见。1.站在公司角度考虑问题,思考战略,与公司大方向有关,否则难以展现价值技术同学:可以写我们推进和完成了这么一个工作,支撑了公司今年在这个新业务上创造了多少的产值和产能,为公司带来的整体收益是2000多万,从技术角度支撑来讲,占比30%。
2025-06-04 15:42:13
268
原创 关于面试找工作的总结(四)
HR您好,不好意思打扰您,我是之前应聘XX岗位的XXX,之前很荣幸收到贵司的offer,但当时由于距离问题拒绝了贵司的offer,随后我经过慎重的考虑,觉得贵司的岗位、企业文化、发展前景都与我的职业规划很匹配,经过仔细考虑我还是希望可以加入贵司,距离的问题我已解决,请问这个岗位现在还在招聘吗?
2025-06-04 14:30:17
163
原创 手眼标定:九点标定、十二点标定、OpenCV 手眼标定
因为一直使用6轴协作机器人,且主要应用是三维视觉,平常的手眼标定基本都是基于OpenCV来计算的,听说有九点标定和十二点标定,顺便了解下。
2025-05-25 22:50:54
3427
原创 【ArUco boards】标定板检测
ArUco板是一组标记,其作用类似于单个标记,因为它为相机提供了一个单一的姿势。最受欢迎的板是所有标记都在同一平面上的板,因为它很容易打印:然而,棋盘不限于这种排列方式,并且可以表示任何二维或三维布局。一个板和一组独立标记的区别在于,板中标记之间的相对位置是先验已知的。这使得所有标记的角点都可以用来估计相机相对于整个板的姿态。当你使用一组独立的标记时,你可以单独估计每个标记的姿态,因为你不知道环境中标记的相对位置。1.姿态估计更加通用。只需要一些标记就可以进行姿态估计。
2025-05-05 22:16:56
1403
原创 Windows11中卸载CUDA并安装新的版本
2.找到环境变量和系统变量的path,点击编辑,若发现path中没有含CUDA的环境变量,证明刚刚第一步卸载CUDA的时候系统已经自动删除,若系统没有自动删除(path中仍然含有。因为上面看了当前显卡驱动版本最高支持到CUDA 12.7,这里选择安装CUDA 12.5.1版本。下载好exe文件之后,双击直接按照安装提示一步步安装即可。测试CUDA是否安装成功,重新打开命令行,切换到。这样含有CUDA的路径),则需要手动删除。文件夹,删除该文件夹即可。验证CUDA是否安装成功。测试程序,看结果是否为“
2025-05-05 07:45:00
2076
原创 机械臂只有位置信息是否可以进行手眼标定?
平常我在做手眼标定时,一般都是通过OpenCV的cv::calibrateHandEye函数进行求解,需要输入多组不同的机械臂位姿。今天遇到了一款舵机机器人,只能获取位置,得不到姿态信息,想着那就把姿态都设为0,结果求不出来。。。
2025-04-12 22:30:25
896
4
原创 Ubuntu22.04——YOLOv8模型训练到RK3588设备部署和推理
PS:由于部署系统为瑞芯微开发板,因此需要下载瑞芯微修改后的yolov8源码(只修改了export.py导出部分,训练用yolov8的源码也没问题),且版本与训练PT模型时的ultralytics版本最好一致或高于训练版本(我训练时用的是v8.2.0版本,瑞芯微官网我看是v8.2.71,后续可以直接用瑞芯微官网提供的yolov8源码进行训练)。打开yolo的源码仓库,进去之后会发现不管是什么版本,所有的Tags都是8.x.x,无法分清是yolov8还是yolo11。尝试删除构建目录中的CMake缓存文件。
2025-04-07 09:16:11
1076
原创 YOLOv8——模型训练后生成的文件和图表分析
在YOLOv8模型进行训练之后,会在/runs目录下生成训练结果,其中会生成相应的权重文件、图表、图像等。
2025-04-06 16:58:15
1905
原创 YOLOv8-seg部署RK3588报错:Failed to call RockChipRga interface
rk3588开发板部署yolov8-seg模型报错:Failed to call RockChipRga interface, please use ‘dmesg’ command to view driver error log.
2025-04-06 10:34:48
1369
4
原创 Ubuntu22.04系统安装Anaconda、CUDA和CUDNN
之前一直在Windows系统下使用Anaconda和CUDA加速,最近需要复现一个算法,文档里面有Linux系统conda构建环境的教程。本篇博文参考,记录自己安装的过程,便于以后需要。
2025-02-24 00:13:57
7007
3
原创 解决:Conda虚拟环境中未设置CUDA_HOME的问题
背景:我是Ubuntu22.04系统,最近在复现FoundationPose算法,按照README构建部署环境时,有一步一直卡住,看了下是未找到CUDA_HOME这个环境变量。网上搜了下这个错误,需要设置CUDA_HOME的环境变量路径,一般是在路径下。
2025-02-23 15:29:41
5202
原创 ARM系统源码编译OpenCV 4.10.0(包含opencv_contrib)
因项目部署在ARM系统上,需要编译一个arm版本的opencv-4.10.0(带opencv_contrib)版本。
2025-02-15 17:51:44
482
原创 Ubuntu22.04系统安装使用Docker
Docker 用于自动化应用程序的部署、扩展和管理。它通过容器化技术让应用能够在不同环境之间一致地运行,避免了传统部署方式中因不同系统配置导致的问题。
2025-02-15 11:36:24
6668
3
原创 Gitlab中如何进行仓库迁移
需求:之前有一个自己维护的新仓库A,现在需要将这个仓库提交并覆盖另一个旧的仓库B,需要保留A中所有的commit信息。
2025-02-08 15:00:00
2109
原创 对海康威视工业相机进行取图
@brief 采用超时机制获取一帧图片,SDK内部等待直到有数据时返回* @param handle [IN] 设备句柄* @param pData [IN][OUT] 图像数据接收指针* @param nDataSize [IN] 接收缓存大小* @param pstFrameInfo [IN][OUT] 图像信息结构体* @param nMsec [IN] 等待超时时间* @return 成功,返回MV_OK;失败,返回错误码。
2025-01-27 10:49:21
943
原创 C++内存泄露排查
内存泄漏是指程序动态分配的内存未能及时释放,导致系统内存逐渐耗尽,最终可能造成程序崩溃或性能下降。在C++中,内存泄漏通常发生在使用new或malloc等分配内存的操作时,但没有正确地使用delete或free来释放这块内存。在日常开发过程中,为了避免内存泄露,一般都用智能指针去自动管理内存,避免忘记释放。
2025-01-13 23:14:24
1733
原创 YOLOv5对象检测-从训练到量化部署
YOLOv5是历史上第一个Pytorch版本,之前的V1—V4都是C++的Darknet版本各模型介绍一般想要速度快就选择YOLOv5s,精度高选择YOLOv5l,YOLOv5x性价比不高,参数多了很多,速度也慢了很多但精度提升的不明显。Backbone (骨干网络)Backbone 负责提取图像的基本特征。在 YOLOv5 中,使用了一种基于 CSPDarknet(Cross Stage Partial Darknet)的主干网络,它是一种改进的卷积神经网络,用于提高网络的学习效率并减少冗余计算。
2024-12-29 12:10:06
263
Linux实时内核5.15.137
2024-01-27
turbovnc-3.0.3-amd64.deb virtualgl-3.1-amd64.deb
2023-04-21
ubuntu16.04源码编译wireshark2.6.10
2022-06-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人