自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 资源 (4)
  • 问答 (1)
  • 收藏
  • 关注

原创 FFmepg视频解码

上一篇文章介绍了FFmpeg的下载安装及环境配置,本文介绍最简单的FFmpeg视频解码示例。

2023-08-02 21:37:18 1020

原创 DirectX SDK下载安装及开发环境设置

DirectX(Direct eXtension,简称DX)是由微软公司创建的多媒体编程接口,是一种应用程序接口(API)。DirectX可以让以windows为平台的游戏或多媒体程序获得更高的执行效率,加强3D图形和声音效果,并提供设计人员一个共同的硬件驱动标准,让游戏开发者不必为每一品牌的硬件来写不同的驱动程序,也降低用户安装及设置硬件的复杂度。——

2023-08-01 14:04:11 4205

原创 FFmpeg下载安装及Windows开发环境设置

FFmpeg:FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。项目的名称来自MPEG视频编码标准,前面的"FF"代表"Fast Forward"。——

2023-08-01 12:12:28 1721

原创 PnP解算及SolvePnp用法

PnP问题概念,OpenCV中的solvePnP的各参数意义,并包括使用方法。

2022-11-21 15:20:50 13338

原创 【OpenCV用imshow显示图像到指定窗口内】

OpenCV显示图像用imshow函数,会弹出图像显示窗口但有时我们希望图像能显示到我们界面的某个窗口内,可以这样做:1 界面上放一个Picture控件,用来未来显示图像用,ID设为IDC_PIC(举例)2 定义一个字符串符号(不是必须,只是这样方便,而且不容易出错)#define WND_NAME "myimg"3 在程序初始化时:namedWindow(WND_NAME);HWND hWnd = (HWND)cvGetWindowHandle(WND_NAME);::SetParent

2022-03-01 16:37:30 6120 3

原创 QT编译的程序运行时缺少DLL如何处理

编译完QT的程序后,如果在其他地方运行缺少DLL,可以这样做:进入QT5的命令行,进入EXE或DLL所在的目录运行windeployqt filename回车就会在当前目录下添加上QT5运行所需要的所有库。

2022-02-21 13:37:26 1376

原创 VS2015+CUDA配置编写GPU运行程序

1 安装软件VS2015CUDAcuDNN下载和安装方法这里不再赘述,如需要可参考之前文章。2 工程建立和文件配置2.1 工程建立采用通常方法建立工程即可,没有特殊要求。2.2 C/C++与CUDA混合编码的文件配置CUDA代码不能写在cpp里,否则会出现’<<<‘不认识而无法编译的问题,要写在.cu文件里;.cu文件添加方式:项目右键-添加-新建项-NVIDIA CUDA x.x-Code,可新建CUDA C/C++ File,扩展名为.cu,或CUDA C/C++

2021-10-28 18:24:57 1564

原创 YoloV4自己样本制作和训练

1 引言上一篇文章《Windows下VS2015编译YOLOv4的两种方法,以及__func__未定义问题的解决》记录了Windows下YoloV4编译涉及到的问题。YOLO作者附带了几个权重文件可供下载,包含了日常常见的物体,可以直接用来测试和识别,但如果希望识别我们所指定的物体,那就需要自己制作样本和训练了。2 下载标注和训练前,需要下载几个文件:样本标注软件:yolo_mark,可以下载exe,也可以下载源码自己编译。预训练权重文件:yolov4.conv.1373 需要准备的目录和文件

2021-08-12 16:45:22 1237 1

原创 Windows下VS2015编译YOLOv4的两种方法,以及error C2065: “__func __”未定义问题的解决

之前写过一个Windows下编译YOLOv3的文章:[《Win10+VS2015安装配置YOLO3(CPU/GPU)》](https://blog.csdn.net/hangl_ciom/article/details/88914288?spm=1001.2014.3001.5501)现在Yolo已经到V4了,而且性能有了比较大的提升,所以也装了个Yolo4测试一下,以下为编译时的记录。

2021-08-12 11:17:24 1569 2

原创 机器视觉——相机标定

1 机器视觉为什么要做相机标定机器视觉是采用相机成像来实现对三维场景的测量、定位、重建等过程。是一个利用二维图像进行三维反推的过程,我们所处的世界是三维的,而图像或者照片是二维的,可以把相机认为是一个函数,输入量是一个三维场景,输出量是一幅二维图像。正常来说,这个从三维到二维的过程是不可逆的。如果我们能够找到一个合适的数学模型,来近似以上这个三维到二维的过程,然后找到这个数学模型的反函数,就可以实现二维到三维的的反过程,即:用简单的数学模型来表达复杂的成像过程,并且求出成像的反过程。在前几篇文章《机

2020-06-27 14:25:27 17275

原创 UDP协议及通信编程

1 概述Internet 的传输层有两个主要协议,一个是TCP,一个是UDP:TCP协议:传输控制协议(TCP,Transmission Control Protocol);UDP协议:用户数据包协议(UDP,User Datagram Protocol)。两者的主要区别:连接:TCP面向连接,即必须首先建立与对方的连接,才可以收发数据;而UDP无需建立连接就可以发送封装的 IP 数据包。可靠性:TCP是一种面向连接的、可靠的、基于字节流的传输层通信协议;而UDP提供了无连接通信,且不对传送数

2020-06-26 17:46:32 898

原创 机器视觉模型——畸变模型

1 概述机器视觉镜头的透镜由于制造精度以及组装工艺的偏差会引入畸变,导致原始图像的失真。在前一篇文章《机器视觉投影矩阵》中描述了机器视觉系统成像模型,在这个模型里包含了相机内参(与像元尺寸、焦距、像素中心有关)以及相机外参(与相机在世界坐标系的位姿有关),这个模型是一个理想模型,或者说线性模型,没有考虑到镜头透镜产生的畸变所带来的影响。结合上文成像模型,可以把畸变理解成像点和物点之间的光线是弯曲的,如下图所示。图中本来应该共线的三个点OOO、PcrtP_{crt}Pcrt​、Q,现在由于透镜原因不

2020-05-21 12:04:11 2418

原创 机器视觉模型——投影矩阵

1 概述机器视觉就是用机器代替人眼来做测量和判断。机器视觉系统工作的基本过程是获取目标的图像后,对图像进行识别、特征提取、分类、数学运算等分析操作,并根据图像的分析计算结果,来对相应的系统进行控制或决策的过程。在很多机器视觉应用中,都需要用到机器视觉测量,即根据目标的图像,来得到目标在实际空间中的物理位置,最典型的如行走机器人、SLAM等。要根据图像中的目标像素位置,得到目标的物理空间位置,我们需要首先有一个图像像素坐标与物理空间坐标的映射关系,这种能够表达空间位置如何映射到图像像素位置的数学公式,就

2020-05-12 23:15:48 5286 2

原创 齐次坐标

1 齐次坐标概念概念:齐次坐标就是将一个原本是n维的向量用一个n+1维向量来表示,是指一个用于投影几何里的坐标系统英文:homogeneous coordinates(同质的)。例如:标准向量:[xyz]\left[\begin{matrix}x\\y\\z\end{matrix}\right]⎣⎡​xyz​⎦⎤​,写为齐次向量形式:[xyz1]\left[\begin{matrix}x\...

2020-02-22 12:49:39 3874 1

原创 Windows Sockets 网络编程及UR机器人通信数据解析代码

1 前言之前写了几篇关于UR机器人网络控制的文章:《UR机器人返回信息格式解析》、《UR机器人通信端口和协议》,有不少读者问关于编程实现方面的问题,因此,这里上传有关的代码,供同行参考。2 包含内容我这里是用VS2015编译环境,用C/C++语言实现的。实际上没有高深的技术,涉及到两个内容:Windows Sockets网络编程;数据内容解析,包括数据字节的转换。3 程序实现3...

2020-02-22 10:09:26 6696 12

原创 机器人正向运动学和D-H参数方法

1 概念1.1 机器人本文讨论的机器人,为空间开链连杆机构,其中的运动副(转动副或移动副)常称为关节,关节个数通常即为机器人的自由度数。即:机器人由一系列关节(Joint)和连杆(Link)组成,这些关节可能是滑动(线性)的或旋转(转动)的,它们可以按任意的顺序放置并处于任意的平面,连杆也可以是任意的长度(包括为零),它可能被弯曲或扭曲,也可能位于任意平面上,所以任何一组关节和连杆都可以构成...

2019-10-27 12:36:22 25607 14

原创 刚体姿态及旋转的表示方法

坐标系中,一个刚体的状态可用位置和姿态来描述,位置即为该刚体在坐标系中的空间位置,用一个坐标向量即可表达。而要描述刚体的姿态,有很多种表示方法,以下列出常用的:1 旋转矩阵1 欧拉角(Euler angles)1.1 欧拉角欧拉角是描述刚体姿态的一组3个角值的参量,同时需要指定三个角度转动时分别围绕的坐标轴,以及旋转的顺序,一旦确定了这些,那么这个欧拉角的描述就可以分解为三个基本的旋转,三...

2019-08-17 15:43:02 4749 2

原创 欧拉角的理解

关于欧拉角的概念,欧拉角的定义(动态,静态,内旋、外旋),以及内旋和外旋的公式推导。

2019-08-15 23:09:25 15068 14

原创 Access数据库查询分页方法

对于数据库记录比较多的情况,查询时就需要分页,以下叙述两种分页方法。1 Access查询结果分页方法一1.1 方法设每页记录数为CntPerPage,要获得第Page页的查询结果,用以下SQL语句。SELECT * FROM (SELECT TOP CntPerPage * FROM( SELECT TOP Page*CntPerPage * FROM TableName WHERE Qu...

2019-08-04 20:30:37 4447 3

原创 VS2015+Access2016编写数据库程序

Access是微软在Office中集成的一种桌面式的数据库系统,在一些规模不大的数据库应用中,使用Access还是比较方便的。在使用VS与Access编程的时候,还是有一些问题要注意,这里记录备查。1 环境设置要在VS应用程序中使用ADO访问数据库,需要在stdafx.h的最后加上以下语句:#import "C:\Program Files (x86)\Common Files\Syste...

2019-07-31 17:23:36 3203 1

原创 坐标变换及旋转矩阵

最近由于研究UR机器人的运动控制,所以复习和查阅了一些关于坐标系旋转之类的资料,记录一下,以备使用。以下公式中,规定几种标识:1) 坐标系A用{A}表示,同理,有{B};2) 左上角表示所在坐标系标识,如Ap^ApAp和Bp^BpBp表示点p分别在坐标系{A}和{B}中的坐标。1 空间点的坐标变换1.1 平移坐标变换Ap=Bp+ApBO^Ap={^Bp}+{^Ap_{B_O}}Ap=B...

2019-07-31 15:49:42 13406

原创 UR机器人返回信息格式解析

1 概述UR机器人提供了多种端口,用于控制和读取机器人信息,本人整理了相关信息,见文章《UR机器人通信端口和协议》。本人使用了30003端口来向机器人发送URScript脚本控制命令,并通过该端口接收实时返回数据。2 UR返回协议解析2.1 返回数据包频率和长度由于30003端口返回的信息是最全的,包含了30001、30002端口的返回信息,因此,这里以30003端口信息解析。3000...

2019-07-28 11:27:25 10576 33

原创 UR机器人通信端口和协议

1 概述UR机器人作为目前使用广泛的协作机器人,其开放了基于TCP/IP的远程控制功能,提供了多个多类型的端口,用于工业总线控制,或者用户自行编程控制,以下记录整理此方面的信息。2 UR机器人通信2.1 UR通信协议UR机器人可通过TCP/IP通信,向机器人发送控制命令,以及从机器人获取状态信息。2.2 UR通信端口UR机器人通信时提供了以下接口,我们可以根据自己需要,使用其中的一种或...

2019-07-28 10:12:29 16457 9

原创 第一次编程操作UR10协作机器人的记录

第一次操作UR10协作机器人的记录1 引言UR机器人参考:丹麦优傲机器人 中文网页项目需要借来了一台UR10协作机器臂,用自带的触摸屏控制试验了一下,非常好用,又从网上下载了一段基于C#的程序,大概读了一下,并用VS2015用C实现了对机械臂的控制,同时学习了控制机械臂的几个注意的点,以下纪录。注:这里只是工作记录,没深究内部原理和协议规定。2 连接和端口计算机与UR机器人的连接通过...

2019-06-04 19:12:17 12980 15

原创 精度及其3σ准则

1 精度的概念定义:测量值与真实值(或标准值)的接近程度,称为精度。精度与误差的大小相对应,因此可用误差大小来表示精度的高低,误差小则精度高,误差大则精度低。精度包含了以下三类概念:1)准确度(Accuracy):表示测量结果与真值之间的一致程度,它反映测量结果中系统误差与随机误差的综合。其定量特征可用测量的不确定度(或极限误差)来表示;2)精密度(Precision):表示在一定条件下...

2019-05-01 13:18:42 31342 1

原创 镜头焦距、光圈、物距与景深之间的关系

光学镜头选择时,几个主要的参数直接影响了最终的成像效果,其中一个很重要的参数是景深,这里记录镜头景深的几个影响因素及之间的关系。1 焦距焦距是指平行光入射时从透镜光心到光聚集之焦点的距离。2 光圈2.1 光圈光圈是一个用来控制光线透过镜头,进入机身内感光面光量的装置,它通常是在镜头内。进光量与镜头有效透光孔直径D的平方成正比,与镜头焦距f成反比,D与f的比值称为相对通光孔径,其倒数f/D...

2019-04-19 12:23:28 24698 8

原创 VS2015图形界面YOLO3应用程序

前言下载的YOLO3源码及其应用程序都是基于命令行的,很多需要把YOLO3集成到图形界面应用里,作者已经做了YOLO3的DLL,即yolo_cpp_dll,实际上如果需要图形界面,调用这个DLL就可以了。作者在源码里附带了yolo_console_dll示例程序,其中涵盖了对视频、图像等的应用,仿照这个程序就可以编制自己的各类应用了。步骤新建工程新建项目-MFC-MFC 应用程序,我这里...

2019-03-31 22:04:01 3483 9

原创 Win10+VS2015安装配置YOLO3(CPU/GPU)

计算机配置本人计算机和显卡的配置:安装了VS2015,YOLO3本身就是用VS2015编写的,所以直接可用,如果其他版本可能需要补丁。2 安装或下载安装需要的软件包由于自己也是第一次实际操作使用这些软件,所以这里记录下每个工具的意义。YOLO3有CPU和GPU版本,如果只是使用CPU版本,具备以下前两个就可以了,如果使用GPU版本,就需要都具备。2.1 VS2015这个就不细说了...

2019-03-30 17:07:10 4086 15

原创 VS2015环境下编译CxImage702

VS2015环境下编译CxImage7021 源码下载2 打开解决方案3 编译3.1 尝试编译3.2 修改工程属性设置3.3 再次编译4 编译输出文件4.1 cxImage静态库:4.2 cximagecrtdll:C运行时动态连接库4.2.1 Debug版(32位和64位都是这个位置)4.2.2 Release版(32位和64位都是这个位置)4.3 cximagemfcdll:MFC扩展动态链接...

2019-03-27 23:19:22 1602

原创 VS2015编译64位GDAL2.4.0和2.3.3

VS2015编译64位GDAL2.4.0和2.3.3程序用到GDAL库,之前有一个2.1.3版,一直好用,但是重装了WIN10后,再用就用不了了,总是提示缺少SSLEAY32.dll等一系列DLL,因此,想搞个最新的GDAL库。在Downloading GDAL/OGR Source最新的是2.4.0,于是下载了source。按照win10+VS2015 编译64位的gdal,并配置环境文...

2019-03-18 23:07:40 1273 1

FFmpeg视频解码VS2015工程

FFmpeg视频解码的简洁示例,可打开视频文件、解码视频帧、YUV转RGB,并显示视频图像。已封装为CVideoDecoder类,代码用C++编写,VS2015编译。

2023-08-02

Windows Sockets 编程及UR机器人通信数据解析代码

用于UR机器人的通信及通信数据解析,内容包括完整的Windows Sockets编程,以及UR机器人的通信协议解析、字节顺序变换等。

2020-02-22

VS2015编译完成的GDAL2.3.3库64位版本

编译好的GDAL2.3.3的64位版本,自己用VS2015编译的,含include、lib、dll,可直接用

2019-04-02

用VS2015编译的CxImage702完整编译版库_x64_x86_dll以及静态lib

用VS2015编译的CxImage702完整版本,内容包含include以及编译好的x64和x86下的lib及DLL,以及静态使用的CxImage的lib,可以直接用。

2019-04-02

vs2015编译的yolo3图形界面程序源码

用VS2015编写的图形界面YOLO3测试程序,可以通过按钮打开需要的图像,然后进行YOLO3计算,显示图像和识别结果,并显示运算花费时间。

2019-03-31

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除