- 博客(58)
- 资源 (1)
- 问答 (1)
- 收藏
- 关注
原创 嵌入式VNC远程桌面配置终极指南
伙计们,终极指南在手,小赞点起来哦!1.开发板VNC服务器安装#1.终端输入如下指令安装tightvncserversudo apt-get install tightvncserver#2.终端输入下方指令初次运行vncservervncserver#3.之后会提示输入密码(两次),询问view-only password直接输入n即可You will require a password to access your desktops.Password:Verify:Wo
2022-05-13 11:57:15
1591
原创 如何在vs中调用Qt编写的库(使用qt事件循环)
一般的基于Qt开发的库,如果没有调用Qt的事件循环,直接调用就可以,对于使用Qt事件循环的库,在调用时需要做如下工作://包含Qt的头文件#include <QtWidgets\QApplication>//声明Qt的事件背景循环变量int iArgc = 0;static QApplication qtApp(iArgc, NULL);...
2022-04-29 16:05:39
1459
原创 Mac电脑机器视觉开发环境配置
1.Qt的安装Qt的安装与win和ubuntu的安装大同小异,都是下载安装包,然后安装就可以了,这个过程中可能会提示安装XCode,直接同意就可以了。之后的启动和运行类似于ubuntu,都是通过命令行启动,不一样的一点是,mac的启动指令是open,替代了./。2.Qt的编译问题我的Qt版本是14.2,新版本都会报sdk版本不匹配的警告,带来的影响就是最简单的窗口都不会显示,所以pro文件请添加如下两句话:CONFIG += c++11 sdk_no_version_checkQMA
2022-04-09 12:11:55
3120
原创 Xenomai
一种基于双内核的实时系统,其系统的的介绍可以参考如下文章:1.Xenomai官网2.读过得比较详细的中文介绍3.台湾的一个wiki目前看到的使用例子,大部分是使用Ethercat,但具体的例子并未发现...
2021-11-01 16:36:13
611
原创 JPEG编码的那些事
最近在研究硬件编解码,使用了全志的芯片,不得不说,全志的资料是真的差劲,具体的硬件使用逻辑本文不进行讨论,只记录一些与JPEG相关的链接与知识。
2021-06-16 17:03:08
169
原创 内存泄漏的调试工具
1.VLD(Visual Leak Detector)这个可以在windows上使用,使用时只需要包含对应的头文件,如果需要其他的设置可以将对应的配置文件进行修改,具体的使用方法
2021-06-11 14:39:28
236
1
原创 如何进行对Cache友好的编程
先引入一个参考链接,博主对Catch的起源、运行原理介绍的很清楚,还是用Java的一些开发例子做了说明,对于大数据处理(例如图像处理)还是有很大帮助的,本文展示一些嵌入式的例子以及评估方式。...
2021-06-10 14:45:54
339
原创 NEON + OpenMP测试
在嵌入式的开发中,一直有在使用OpenMP和NEON加速,这次对二者的加速效果做了一个对比,包括二者的组合效果,测试平台为RK3399,因为只测试了加法的情况,其他的运行逻辑需要再实际使用zho
2021-06-08 14:08:52
865
原创 常用的通讯协议
通用协议1.TCP2.UDP3.FTP工业总线协议1.modbus2.slmp3.fins4.profinet5.Ethernet/IP6.CCLink
2021-05-08 16:47:48
611
原创 光度立体法
光度立体法的原理1.光源标定方法a.基于金属球反射的标定b.基于SFM的光源标定参考链接:1.Photometric Stereo 光度立体三维重建(四)2.光度立体法参考http://pages.cs.wisc.edu/~csverma/CS766_09/Stereo/stereo.htmlhttps://github.com/yasumat/RobustPhotometricStereo...
2021-04-15 17:53:50
2750
原创 计算机图形学之图像变换与标定
一.齐次坐标的定义1.齐次坐标定义2.齐次坐标的理解二.最小二乘法1.最小二乘法2.最小二乘计算仿射矩阵三.图像变换1.关于图像变换的总结2.旋转矩阵推导3.刚体变换与仿射变换实现4.利用SVD求解刚体变换矩阵5.计算两个点集间的刚体变换6.奇异值分解的推理7.3D点云配准之刚体变换四.标定1.九点标定2.opencv九点标定...
2021-02-25 17:58:07
682
原创 QT的UI风格设计
一.如何修改整体的风格 修改风格有两种方式,一种是使用qstyle,一种时使用qss(和css类似) qstyle可以重绘控件,默认会提供几种风格供选择,这个是和系统有关系的,主要使用方法如下#include <QStyleFactory>void changeStyle(){ QStringList keyList = QStyleFactory::keys(); for(int i = 0; i < keyList.length(); i...
2021-02-25 13:57:06
1340
原创 相机标定的若干知识
相机标定的起始和前备知识手眼标定opencv实现方法matlab实现方法参考网址:1.从零开始学习「张氏相机标定法」(一)相机成像模型2.从零开始学习「张氏相机标定法」(二)单应矩阵3.刚体运动4.相机矩阵5.射影几何6.对极几何7.对极几何...
2021-02-20 17:37:33
122
1
原创 Git的一些常用操作集锦
最近在使用git频繁操作一些开源项目时,发现了许多使用上的问题,在解决的过程中发现一些好用的小方法,现在记录如下:1.如何切换到指定的commit版本#1.找到需要的commit号,例如为b92e8c4,使用如下命令得到完整的commitgit log b92e8c4#2.切换到这个commit下git checkout b92e8c4299a7b71cff8923d5354ef390b0769fae#3.在本地新建一个test分支git checkout -b test b92e
2020-12-09 11:00:06
107
原创 Debian远程桌面的实现
1.查询当前的桌面环境ps -A | egrep -i "gnome|kde|mate|cinnamon|lx|xfce|jwm"我的桌面环境是lx,所以使用后的结果如下root@debian10:~$ ps -A | egrep -i "gnome|kde|mate|cinnamon|lx|xfce|jwm" 36 ? 00:00:00 kdevtmpfs 4590 ? 00:00:00 lxsession 4652 ? 00:00:00
2020-10-10 14:45:19
7334
原创 关于多线程、多线程的调试方法
1.strace的使用方法#strace 可以输出系统的调用函数信息 strace -p pid # 跟踪进程执行时的系统调用和接收的信号# 其他的参考使用方法如下-c #统计每一系统调用的所执行的时间,次数和出错的次数等.-d #输出strace关于标准错误的调试信息.-f #跟踪由fork调用所产生的子进程.-ff #如果提供-o filename,则所有进程的跟踪结果输出到相应的filename.pid中,pid是各进程的进程号.-F #尝试跟踪vfork调用.在-f时,vf
2020-09-22 15:21:38
446
原创 TI ARAGO 文件系统构建指南
1.可参考的网址 1. Arago wiki 2. Linux78镜像地址汇总 3. TI github仓库 4. TISDK构建指南 5. 可参考仓库 6. 使用 Yocto Project 构建自定义嵌入式 Linux 发行版
2020-09-14 10:52:18
1153
原创 Openssl交叉编译指南
1.交叉编译步骤#./Configure --help查看帮助信息#设置交叉编译器和安装路径./Configure linux-generic32 no-asm shared no-async --prefix=/home/xx/openssl/build cross_compile_prefix=arm-linux-gnueabihf-#编译make#安装make install2.openssl加密解密#使用des3加密#-k 密码#-in 加密的文件#-out
2020-09-08 16:51:35
1138
3
原创 QT 正则表达式的使用方法
正则表达式用于字符串处理是很方便的,但是其规则往往容易学习基础,又很容易忘记,遂将遇到的问题和收集到的资料总结如下。如果对你有帮助,记得点赞、收藏、关注三连哦!1.正则表达式的基础规则表达式 说明 ^ 指字符串的开头 $ 指字符串的结尾 \s 匹配任意空白字符 \S 匹配任意非空白字符 \d 任意数字 \D 匹配任意非数字 \w 任意单字字符(字母、数字或下划线) \W 匹配任意非单字字符 [abc]...
2020-08-13 18:01:39
3760
原创 Ubuntu下gcc、g++版本的切换
在编译某些系统模块时,往往由于编译器版本不具有向后兼容的能力,导致编译问题百出,这时就需要进行编译器版本的切换。最近刚好在编译USB网卡驱动时遇到了这种问题,记录如下:1.如何查看编译器的版本#查看当前gcc的版本gcc -v#查看当前g++的版本g++ -v2.如何查询系统当前已安装的编译器版本#编译器一般都安装在/usr/bin下cd /usr/bin#查看已安装的编译器ls g++*ls gcc*3.如何安装需要的编译器版本#例如安装版本为4.8的编译
2020-08-07 16:06:12
1072
原创 深度学习环境常用命令指南
1.anacondaconda update condaconda update anacondaconda update anaconda-navigator //update最新版本的anaconda-navigator conda update -n base conda //update最新版本的condaconda create -n xxxx python=3.5 //创建python3.5的xxxx虚拟环境conda activate xxxx
2020-08-06 14:03:59
279
原创 shell的一些常用命令组合
#1.如何获取进程app的pid ps -ef | grep app | grep -v grep | awk '{print $2}'#2.如何获取进程app的连续运行时间 ps -ef | grep app | grep -v grep | awk '{print $7}'#3.top显示指定的进程 top -p pid | grep pid#4.top输出指定进程信息到文件 if [ ! -f "app.log" ]; then touch .
2020-08-04 14:36:16
362
原创 Ubuntu下的网络发包和抓包工具
将最近在网络开发中用到的一些发包和抓包工具使用方法总结如下,作者总结不易,对你有帮助的请点赞、关注和收藏三联哦!1.packEth发包工具的使用方法 a.安装方法sudo apt-get install packEth b.打开方法#为了可以使用对应的网卡,需要sudo权限sudo packEth2.wireshark抓包工具的使用方法3.tcpdump抓包工具的使用方法tcpdump是一个常用的命令行抓包工具,常用的命令参数如下:tcpdum...
2020-08-04 11:41:44
4685
原创 如何获得memcpy的最佳效率
当进行内存拷贝的时候,我们一般都会使用memcpy函数,尽管该函数经过不断的优化,但是有时候我们会发现直接使用该函数的效率并不是最高的。下面以图片复制来进行效率测试,图片共有5种分辨率,测试平台为ARM contex-A15。#include <QCoreApplication>#include <time.h>#include <sys/time.h>#include <arm_neon.h>int main(int argc...
2020-07-24 17:24:27
4973
4
原创 ARM交叉编译报/lib/libpthread找不到
这种情况的发生一般是LDFLAGS设置的不对,可以单独指定该变量,有如下两种方法:如果arm对应的文件系统在~/user/sysroot/1.可以使用直接修改环境变量的方法export LDFLAGS=" --sysroot=`/user/sysroot"2.如果使用CMAKE,可以使用设置CMAKE_EXE_LINKER_FLAGSSET(CMAKE_EXE_LINKER_FLAGS "--sysroot=~/user/sysroot")...
2020-07-17 17:41:28
2847
原创 LInux下的网络ioctl使用
将Linux下用于控制网路参数的 ioctl常用函数记录如下:#include <QCoreApplication>#include <linux/socket.h>//#include <linux/ioctl.h>#include <linux/ethtool.h>#include <linux/sockios.h>#include <net/if.h>#include <sys/ioctl.h>
2020-06-22 16:14:56
843
1
原创 linux如何设置静态IP
进入 /etc/systemd/network/打开10-eth.network将其中的内容进行修改为---- File contents -----[Match]Name=eth0[Network]#DHCP=yesAddress=192.168.1.119Broadcast=192.168.1.255Netmask=255.255.255.0Gateway=192...
2020-04-02 13:53:06
1163
原创 Linux的信号机制与异步通知机制
1.GPIO异步通知机制//应用程序需要完成如下三个步骤:(1)signal(SIGIO, sig_handler);调用signal函数,让指定的信号SIGIO与处理函数sig_handler对应。(2)fcntl(fd, F_SET_OWNER, getpid());指定一个进程作为文件的“属主(filp->owner)”,这样内核才知道信号要发给哪个进程。(3...
2020-03-23 15:15:05
523
原创 ./configure 的用法
1.当交叉编译给ARM平台的库时#当编译器是arm-linux-gnueabihf时,host为编译器前两个词arm-linux./configure --host=arm-linux CC=arm-linux-gnueabihd-gcc CXX=arm-linux-gnueabihf-g++#当编译器是aarch64-linux-gnu-时,host为编译器前两个词aarch64-l......
2020-03-20 16:20:38
5652
原创 Profinet响应时间相关的通信参数
1.响应时间介绍(http://www.doc88.com/p-3337476973269.html)minDeviceInterval表示设备能够提供新数据的时间性能,即设备提供数据的最小间隔minDeviceInterval = 31.25us * sendClockFactor;一般在GSDML中该值直接表示为更新的倍数,即当minDeviceInterval=256时,表示为2...
2020-03-18 10:45:46
5047
PaddleLite 在TX2上编译怎么使能cuda,对PaddleOCR是否有加速效果
2020-12-15
TA创建的收藏夹 TA关注的收藏夹
TA关注的人