- 博客(194)
- 资源 (12)
- 问答 (1)
- 收藏
- 关注
原创 新的C++随机数产生方法
新的C++,指的是C++11标准才能够支持的随机数产生方法。不过考虑到现在C++20都已经很常见了,这应该也没问题。随机数产生需要一个随机数发生器,以及一个随机数分布。
2025-04-09 07:46:05
811
原创 Imgui处理glfw的鼠标键盘的方法
在Imgui初始化时,会重新接手glfw的键盘鼠标事件。也就是遇到glfw的键盘鼠标事件时,imgui先会运行自己的处理过程,然后再去处理用户自己注册的glfw的键盘鼠标事件。因此在写自己的键盘鼠标事件函数时,不需要考虑去调用Imgui的事件处理函数, 只需要专心写自己的函数即可。当用户在于Imgui交互时,因为也会触发自己的键盘鼠标事件,这个时候可以在自己的事件处理函数中忽略这个交互。看到了吗,当发生鼠标键盘事件时,会先调用用户之前注册的事件处理方法,然后再是Imgui自己的处理方法。
2025-03-29 20:12:02
376
原创 python生成、操作svg图片
通过python生成svg图片的方法有许多,比如OpenCV的源码中有svgfig.py这个脚本可以用于生成svg图片(OpenCV的棋盘格图片可以通过这个方法生成),也可以使用svg.py的库,安装方法如下下面是通过这个库生成一个简单的svg图片主意svg与png、jpg等格式不同,svg是矢量图,里面的内容都是一些描述性的。比如下面就是"test1.svg"的内容通过浏览器可以直接打开这个svg文件。
2025-01-03 14:04:03
721
原创 CLION中运行远程的GUI程序
通过SSH的ForwardX11的方法,就是将远程的GUI程序显示到本地机器上,一般在mobaxterm中执行远程的GUI程序时就是用的这种方法。但是这种方法我不太清楚如何在clion中配置,我后面查了一下clion的论坛,说这种方法目前还不支持。通过在执行程序时设置DISPLAY=:0,让这个GUI程序在远程机器的显示器上显示。这个方法比较简单,只需要在CLION的Run/Debug Configuration中配置一下执行的环境变量就行。在CLION中运行远程GUI程序,很有可能会遇到下面错误。
2024-12-21 20:18:08
308
原创 C/C++中有符号的类型、无符号类型之间的转换
这其实是有问题的,因为high和low是int32类型的,其中low很有可能是负数,如果直接转成int64,符号位会直接复制造成转换成int64的负数。当时恢复这个int64的时间戳时(int64很大,所以有符号的类型也不会溢出),其他同事是这么写的。这个是在项目中遇到的一个问题:底层传上来的一个时间戳,放置在两个int32类型中。正确的方法应该是先把int32转换位无符号的数uint32,然后再扩展成int64。
2024-11-20 15:36:54
280
原创 图像、视频处理有关的标准及制定的组织
IEEE 1394 (FireWire): 数码视频传输接口标准,应用于摄像机和计算机之间的数据传输。IEC 61966-2-1 (sRGB): 标准RGB色彩空间,用于显示器、互联网和图像处理。Blu-ray Disc (BD): 蓝光光盘标准,支持高清和超高清(4K)视频内容的存储。MPEG-4 AVC (H.264): 高压缩率视频编码标准,用于网络视频和高清内容。MPEG-H (H.265/HEVC): 支持4K和8K分辨率的视频压缩标准。
2024-11-04 16:31:18
862
原创 numpy中将行向量变成列向量的方法
在Python中使用numpy库进行矩阵运算时,有时候需要将行向量变成列向量进行运算。下面是两种方法,其中后一种方法我觉得非常方便。下面是一个归一化的例子,在很多算法中经常使用。
2024-10-18 11:38:32
424
原创 Python中将通过字符串得到同名变量的两种方法
eval更加灵活,也可以实现_getattribute_的功能。下面是有给例子,可以解释这两着的用法。
2024-10-14 16:16:21
362
原创 一块普中TFTLCD液晶屏幕
并没有标注任何TFT驱动芯片的型号,给普中的售后联系,他们称这款TFT显示屏是很老的显示屏,没有这个屏幕的资料了,而没有驱动芯片信息,是不能点起来的。手里有一款老旧的普中开发版HC6800-EM3 V3.0 在进行TFTLCD液晶显示时,发现TFT液晶显示屏是这样的。通过使用普中A7附带的源代码资料进行测试(打开R61509V),发现确实可以点起来。通过A7资料介绍,应该这个屏幕也是电阻屏幕,经过测试,确实能够感应到触摸。因为这块屏幕只标识了1P5436,也应该是裸屏的型号。驱动IC:R61509V。
2024-09-11 20:49:17
477
原创 arduino IDE 处于read only editor模式
当我们浏览一些arduino的例子的时候,有时候想修改这些例子。但是这些例子即使另存到自己的文件目录下,仍然不能修改,提示处于read only 模式。我自己发现原因就是这些源文件就是只读的。好像在windows下很少碰到这种文件权限的问题,在Linux下比较常见。网上有一些什么说法,说要设置什么之类的,当我们点开之后,好像没有那些设置项。右键点开例子的文件夹,将只读取消。并且应用到该文件夹下的所有文件。这样在arduino中就可以修改文件了。
2024-07-03 15:31:03
1536
原创 ceres和eigen的cmake配置
包含ceres和eigen引用的源文件,需要在CMakeLists.txt中这样写。这样cmake会自动到系统下去寻找eigen, ceres相关的cmake文件,ceres是编译后,安装到系统目录下的。这里的eigen是用下面安装的,
2024-07-02 17:54:53
430
原创 查看linux中libc库的位置
因为在linux中libc库是非常基础的库,因此随便编译一个简单的hello world程序,一般也会链接上这个库。可以通过ldd命令来查看编译成功的可执行程序,来查看链接哪些库,以及链接库的位置。然后这个libc库可以当做一个可执行程序直接运行,查看其信息。
2024-06-29 20:36:37
1161
原创 ubuntu/debian中安装OpenCV并且配置OpenCV开发环境
本文记录我在Ubuntu和Debian中编译安装OpenCV,并且在CMakeLists.txt中配置OpenCV环境的过程。
2024-06-27 15:06:41
1139
原创 《Multiple View Geometry in Computer Vision》中的Lemma A4.2证明
这里主要是对《计算机视觉中的多视图几何》里面的A4.2定理进行证明。
2024-05-29 16:59:50
1120
原创 推导点到直线(平面)的距离公式
本文利用了点和直线、平面的齐次坐标表示方法,来推导2维点到直线距离,3维点到平面距离的公式。用齐次坐标表示方法推导比较简洁。
2024-05-27 17:12:01
1318
原创 在Python中使用OpenCV读取图片的路径有中文,会读取失败。
在Python中使用OpenCV的imread方法读取图片,如果图片路径有中文,读取会失败。这里提供了一种解决方法。
2024-05-11 15:03:06
585
2
原创 OpenGL导入的纹理图片错位
OpenGL的纹理图片宽度不是4的整倍数时,纹理图片显示时会发生错位,这是因为OpenGL默认的对齐字节数是4,只要改为1就行。
2024-05-11 14:56:10
359
原创 通过QT自动生成的gitignore文件来说明用法
通过Qt自动生成的gitignore文件来说明gitignore文件的忽略规则,还有一些通配符知识点。
2024-05-09 16:21:19
825
原创 windows编程中的位图操作,界面中插入位图方法
本文主要讲了在windows图形编程中,插入位图的方法,主要是BitBlt这个函数的使用,以及其他相关函数说明。
2024-05-01 21:04:15
227
PyQt4安装包(python 2.7 x64 PyQt4.11)
2016-08-01
Nvida GEforce GTX 1650支不支持CUDA编程吗?
2019-07-17
TA创建的收藏夹 TA关注的收藏夹
TA关注的人