自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

yuan

人工智能/图像处理/深度学习

  • 博客(91)
  • 资源 (1)
  • 收藏
  • 关注

原创 ‘xxx‘defined but not used [-Werror=unused-function] static修饰的函数未调用警告

static修饰的函数未调用警告1.问题2.解决1.问题static修饰函数不调用会‘xxx‘defined but not used [-Werror=unused-function]2.解决可在未使用的函数开头添加__attribute__((unused)) ,则可正常编译unused:This attribute, attached to a function, means that the function is meant to bepossibly unused. GCC wi

2022-05-10 19:46:32 5493

原创 BT.656标准简介-内同步并口-以及波形测量

BT.656标准简介-以及波形测量1.定义2.协议2.1. 帧的概念(Frame)2.2. 场的概念(field)2.3. 每一行的组成(Lines)2.4. EAV和SAV3 波形测量1.定义itu-r bt.656定义了一个并行的硬件接口用来传送一路4:2:2的ycbcr的数字视频流。2.协议2.1. 帧的概念(Frame)一个视频序列是由N个帧组成的,采集图像的时候一般有2种扫描方式,一种是逐行扫描(progressive scanning),一种是隔行扫描(interlaced

2021-08-06 19:52:58 2813 1

转载 SecureCRT脚本-python

SecureCRT脚本-python1.这里写两个小脚本一、SecureCrt脚本(一)顶级对象之Crt1、引言2、关于脚本表头3、顶级对象'crt'的子属性和方法3.1、属性3.1.1、Dialog3.1.2、Screen3.1.3、ScriptFullName3.1.4、Session3.1.5、Version3.1.6、Window3.2、方法3.2.1、GetActiveTab()3.2.2、GetScriptTab()3.2.3、GetTabCount()3.2.4、GetTab(Index)3.

2021-06-04 14:36:56 5199 2

转载 Linux系统重置和修改root密码

Linux系统重置和修改root密码Linux系统经常会出现忘记root密码的情况,写下此随笔,以便记忆和学习。一、重置root密码的步骤如下:1.如果系统是开机状态,重启一下。进到下面这个界面按字母“e”键。2.找到 linux16这一行,将下图红框中的内容修改为:rw rd.break3.按“Ctrl + x”键,进入救援模式,如下4.依次输入以下命令。# chroot /sysroot# passwd# touch /.autorelabe# exit# rebo

2021-06-03 15:53:01 2448

原创 shell从文件里读出来的带换行符。当成变量打印异常

shell从文件里读出来的带换行符。当成变量打印异常1. 问题1. 问题testVar=value123echo $testVar got it总是打印got it23解决MY_NEW_VAR=$(echo $testVar | sed -e 's/\r//g')echo $MY_NEW_VAR got it

2021-05-28 11:21:09 434

转载 shell循环体内变量传递无效

#!/bin/shtest(){RetVal=0cat 1.log | while read linedo if[ "$line" == "2" ] then RetVal=1 fidonereturn $RetVal}很容易写出上述代码,上述代码返回值始终为0。虽然执行了RetVal=1这条语句,但是一出while循环,变量值又变成0了。这是因为管道是在子shell中执行的,子shell中的变量对于子shell之外的代码块来说, 是不可见的. 当然, 父进程也不能访问这

2021-05-27 21:54:21 936

原创 shell脚本中执行时提示“没有那个文件或目录” 或者 $‘\r‘: 未找到命令的解决办法

在执行shell脚本的时候,会出现‘$’\r’: 未找到命令’错误。多半是因为在window系统中写的shell脚本,然后上传到服务器执行。解决办法如下:1、安装dos2unix。#yum install dos2unix2、使用dos2unix对脚本转换。#dos2unix xxx.sh...

2021-05-27 19:25:06 1878 1

原创 system函数遇到的问题

system函数遇到的问题这几天调程序(嵌入式linux),发现程序有时就莫名其妙的死掉,每次都定位在程序中不同的system()函数,直接在shell下输入system()函数中调用的命令也都一切正常.就没理这个bug,以为是其他的代码影响到这个,或是内核驱动文件系统什么的异常导致,昨天有出现了这个问题,就随手百了一下度,问题出现了,很多人都说system()函数要慎用要少用要能不用则不用,system()函数不稳定?下面是system函数百度的介绍:进程管理之system 详解system定义

2021-02-25 21:12:05 1381

原创 直方图均衡化-从公式到代码(python)

直方图均衡化-从公式到代码(python)1.直方图均衡化理论1.1 直方图均衡化介绍1.2 直方图均衡化步骤2.python实现直方图均衡化3.参考文献1.直方图均衡化理论1.1 直方图均衡化介绍1.2 直方图均衡化步骤2.python实现直方图均衡化3.参考文献...

2021-02-01 10:57:26 4368 1

原创 计算机视觉-图像拼接

计算机视觉-图像拼接1.简介2. 步骤2.1、特征点的提取与匹配2.2、图像配准2.3、图像合成1.简介图像拼接在实际的应用场景很广,比如无人机航拍,遥感图像等等,图像拼接是进一步做图像理解基础步骤,拼接效果的好坏直接影响接下来的工作,所以一个好的图像拼接算法非常重要。再举一个身边的例子吧,你用你的手机对某一场景拍照,但是你没有办法一次将所有你要拍的景物全部拍下来,所以你对该场景从左往右依次拍了好几张图,来把你要拍的所有景物记录下来。那么我们能不能把这些图像拼接成一个大图呢?我们利用opencv就可以

2021-01-20 14:36:39 778

原创 计算机视觉-相机内参数和外参数-相机标定-坐标系转换

计算机视觉-相机内参数和外参数-相机标定1、 相机内参2、相机外参数3、相机标定(或摄像机标定):4、坐标转换1、 相机内参相机内参数是与相机自身特性相关的参数,比如相机的焦距、像素大小等;相机内参分为内参矩阵和畸变参数矩阵现有的相机都至少包含一个光学镜头和一个光电传感器(CCD或CMOS)。通过镜头,一个三维空间中的物体经常会被映射成一个倒立缩小的像(当然显微镜是放大的,不过常用的相机都是缩小的),被传感器感知到。理想情况下,镜头的光轴(就是通过镜头中心垂直于传感器平面的直线)应该是穿过图像的正

2021-01-20 14:20:08 1528

转载 CCS6.2超详细使用方法

CCS6.2超详细使用方法   本文介绍了如何安装CCS6.2、一步一步的建立工程、以及建立工程以后编译、调试、如何方便快捷有效率的使用CCS6.2。转载 : https://blog.csdn.net/qq_31389903/article/details/53413015   一、    简介 本篇介绍CCS6.2的安装与使用操作   二、    ...

2021-01-12 15:38:47 1648

原创 linux脚本文件在任何路径下输入文件名可直接运行

linux脚本文件在任何路径下输入文件名可直接运行1编写脚本(或者以及写好的脚本)2把脚本放入环境变量1 打开profile2 把下面这句加入到文件后面3同步资源3运行脚本1编写脚本(或者以及写好的脚本)编写一个格式化内存卡的脚本formatSD.sh#!/bin/bash### Parameter calibrationif [ $# -ne 1 ]; then echo "Usage: $0 <dev>" echo " eg: $0 /dev/sdb"

2021-01-08 12:36:57 2006

原创 gcc编译及其选项详解、 Gcc的错误类型及对策(syntex errror、No such file or directory、Undefined symbol)

1.简介:gcc是gnu旗舰产品,目前基本上就是和unix捆绑在一起分发的。这个东西功能强大,但是有多达上千个选项,其用户手册也有将近一万行.虽然其中的多数选项平时很少用到.但是不管装软件还是写程序,往往都会用到gcc.下面我就gcc最最常用的几个选项做一个简要的说明,如果你想对gcc有一个全面的了解,比如你想知道在其他非x86平台上gcc是如何工作的话,你可以用命令:man gcc;gcc [-c|-S|-E] [-std=standard] [-g] [-pg] [-Olevel

2020-12-24 10:53:10 2272

原创 动态库编译通过,调用动态库函数运行出现undefined symbol

编了一个动态库,写测试程序去调用动态库,程序编译通过,调用动态库里函数出错,通过加上动态库相关依赖库以及 extern“C”声明解决该错误以下,详细说明解决经过:首先,刚编译好的动态库需要配置好配置文件,测试编译为可执行程序时需要正确的链接动态库,在这些都没问题时,编译通过,运行时报undefined symbol错误时,往下看看,或许能给你解决1.现象分析:错误如图:这三个函数都是问题动态库里函数,程序调用动态库应该是通过程序的符号表去找到这个函数再去调用,出现undefined symbol错

2020-12-23 20:41:11 12927 4

原创 SVN常用命令

一、 SVN常用命令1、将文件checkout到本地目录svn checkout path(path是服务器上的目录)简写:svn co2、往版本库中添加新的文件svn add file3、将改动的文件提交到版本库svn commit -m “LogMessage” [-N] [–no-unlock] PATH(如果选择了保持锁,就使用–no-unlock开关)简写:svn ci4、加锁/解锁svn lock -m “LockMessage” [–force] PATHsvn unlo

2020-12-22 19:49:59 455

原创 linux 查找某目录下包含关键字内容的文件find、grep、xargs高级应用

linux 查找某目录下包含关键字内容的文件find、grep、xargs高级应用1. find单独使用2 使用find+ xargs 进行操作3.使用grep查找某目录下包含关键字内容的文件1. find单独使用find 至少要加上查找的路径。例如,此命令将查找(并打印)系统上的每个文件:find /由于一切皆文件,因此你会看到大量的输出。这可能无法帮助你找到所需的内容。你可以更改路径参数缩小范围,但这实际上并没有比使用 ls 命令更好。因此,你需要考虑要查找的内容。也许你想在家目录中查找所有

2020-12-22 14:15:53 38927

原创 linux分析中断

linux分析中断一、利用sysstat 中的工具包mpstat二、查看文件/proc/interrupts (这个主要是硬件中断)三、查看/proc/softirqs (主要是软中断)四、附录4.1 /proc文件系统4.2分析系统性能工具一、利用sysstat 中的工具包mpstatmpstat是Multiprocessor Statistics的缩写,是实时监控工具,报告与cpu的一些统计信息这些信息都存在/proc/stat文件中,在多CPU系统里,其不但能查看所有的CPU的平均状况的信息,而且

2020-12-21 16:22:35 2040

原创 printf多列对齐(格式化输出的高级应用)

printf多列对齐(格式化输出的高级应用)1字符串对齐1.1列左对齐1.2. 右对齐2数字对齐1字符串对齐1.1列左对齐printf("%-*s", 20, string); 表示输出字符串左对齐输出20,如果字符串不够20个,以空格补齐。 -表示左对齐。例:struct help_struct{char *option_name;char *option_value;char *option_ext;};struct help_struct options[] ={{"set_

2020-12-03 10:37:13 8691

原创 一种指针数组的使用方法示例(从字符串数组中找到与给定字符串相同的)

#include <sys/stat.h>#include<stdio.h>#include<string.h>typedef int BOOL;typedef char UINT8;typedef unsigned char * PUINT8;#define TRUE 1#define FALSE 0static char const *names[]={"zhang","li", //index 1"zhao", //2NULL

2020-10-30 15:56:20 201

原创 数组指针与指针数组的理解

数组指针与指针数组的理解一数组指针与指针数组的定义1 数组指针(也称行指针)2 指针数组二、指针数组和数组指针的内存布局一数组指针与指针数组的定义1 数组指针(也称行指针)定义 int (*p)[n];()优先级高,首先说明p是一个指针,指向一个整型的一维数组,这个一维数组的长度是n,也可以说是p的步长。也就是说执行p+1时,p要跨过n个整型数据的长度。如要将二维数组赋给一指针,应这样赋值:int a[3][4];int (*p)[4]; //该语句是定义一个数组指针,指向含4个元素的一维数组

2020-10-26 21:24:26 230

转载 C/C++程序内存的各种变量存储区域和各个区域详解

C语言在内存中一共分为如下几个区域,分别是:1. 内存栈区: 存放局部变量名;2. 内存堆区: 存放new或者malloc出来的对象;3. 常数区: 存放局部变量或者全局变量的值;4. 静态区: 用于存放全局变量或者静态变量;5. 代码区:二进制代码。知道如上一些内存分配机制,有助于我们理解指针的概念。C/C++不提供垃圾回收机制,因此需要对堆中的数据进行及时销毁,防止内存泄漏,使用free和delete销...

2020-10-26 11:25:42 1705

原创 linux source命令用法详解

linux source命令用法详解1. source命令用法2. source命令的一个妙用3. source filename 与 sh filename 及./filename执行脚本的区别1. source命令用法source FileNamesource命令作用在当前bash环境下读取并执行FileName中的命令。*注:该命令通常用命令“.”来替代。使用范例:source filename. filename #(中间有空格) source命令(从 C Shell 而来)

2020-10-24 10:39:12 2803

转载 assignment discards ‘const’ qualifier from pointer target type的解决

前段时间用C写一个求和子函数,但是出现assignment discards ‘const’ qualifier from pointer target type的警告。代码如下: #include <stdio.h> #define N 10 int sum_array(const int a[], int n) { int sum = 0; int* p; for(p = a;p...

2020-10-16 16:30:06 6731

转载 字符串常量存储总结

常量存储总结 局部变量、静态局部变量、全局变量、全局静态变量、字符串常量以及动态申请的内存区 1、局部变量存储在栈中 2、全局变量、静态变量(全局和局部静态变量)存储在静态存储区 3、new申请的内存是在堆中 4、字符串常量也是存储在静态存储区 补充说明: 1、栈中的变量内存会随着定义所在区间的结束自动释放;而对于堆,需要手动free,否则它就一直存在,直到程序结束; 2、对于静态存...

2020-10-16 16:25:13 2366 2

原创 sorry, unimplemented: non-trivial designated initializers not supported

将C语言转换为C++代码时,发生如下错误sorry, unimplemented: non-trivial designated initializers not supported。查找原因,是因为C++结构体初始化时,必须按照定义的顺序进行初始化,不能够跳过其中内容而初始化其他选项,或者定义的顺序先后有问题。...

2020-10-16 16:21:27 560

转载 C语言中struct初始化

标签:des   class   style   log   com   http   使用   代码   si   C语言中struct初始化• 普通结构体的初始化  &n...

2020-10-16 16:15:57 3210

转载 实现memcpy()函数及过程总结

1.为什么会写memcpy在之前的应聘笔试上遇到一道笔试题,题目要求实现一个my_memcpy函数。函数原型:void * my_memcpy(void *dst, const void *src, int n);之前使用的内存拷贝函数是标准库memcpy函数,拿来就用,真没有对这个函数做过多了解。在网上查了一下,有好多关于memcpy函数优化的文章。在实现过程中了解的越多,往往实现起来越麻烦。还是先实现简单的memcpy函数。2.按字节(Byte)拷贝实现的memcpy 1 void...

2020-10-16 15:57:51 4082

转载 浅析strlen与wsclen、printf与wprintf、%s与%ls

浅析strlen与wsclen、printf与wprintf、%s与%ls 分类: C语言 C++ 2011-12-20 14:28 strlen 函数原型如下: [cpp] view plain copy print ? size_t __cdecl strlen(const char *); size_t __cdec...

2020-09-26 21:50:46 667

原创 段错误(核心已转储)(core dumped)问题的分析方法

段错误(核心已转储)(core dumped)问题的分析方法1.段错误1.1段错误的含义1.2实际常见原因2.生成core文件2.1.使用命令 ulimit -a 查看core文件大小限制2.2使用 命令 ulimit -c 10240 (10240的位置可以是任意一个比较大的数字) 或者ulimit -c unlimited2.3 编译的时候一定要加入-g选项,要不然在最后显示错误的时候只会显示错的地址,而不会显示错误的具体信息2.4生成core的路径3.调试core1.段错误1.1段错误的含义

2020-09-23 22:04:21 42634 5

原创 line 1: syntax error: unexpected word (expecting “)“)

问题:上传到板子的可执行文件,运行后出现 line 1: syntax error: unexpected word (expecting “)”)解决:1.编译器的问题用arm-linux-gcc编译,可能原来是用gcc编译的。假如是脚本,#!/bin/sh 改 #!/bin/bash试试2.编译器位数可能不一致,32位和64位不一致...

2020-09-17 12:08:04 2055

原创 嵌入式中常用的(a+b-1)&~(b-1)是啥意思?

这里写目录标题1.例子2.证明3.验证1.例子假设4位十进制数a = 7,b = 3 (0111 + 0011) & (~0011)= (1010)&(1100) = 1000得到的结果是8同样的(21 + 7)&(~7)= 24(010101 + 000111)&(111000) = (011100)&(111000) = (011000) = 24这个逻辑式子dao的作用由例子可以看出一点点8 是 4(b+1)的倍数中7的最小

2020-09-15 15:53:15 4257 2

原创 python将代码打包成exe程序并添加图标的方法

pyinstaller -F -w -i G:\automation\tpian.ico G:\automation\test.py-i 给应用程序添加图标-F 指定打包后只生成一个exe格式的文件-D –onedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)-c –console, –nowindowed 使用控制台,无界面(默认)-w –windowed, –noconsole 使用窗口,无控制台-p 添加搜索路径...

2020-09-02 21:28:15 3036 3

原创 EXCEL给两列相同的数字或不同的数字填充颜色

1.路径:开始->条件格式2.公式如下=EXACT(A1,A1,A1,B1)=FALSE

2020-07-28 19:13:46 3031

转载 GPU图形图像渲染原理

目录引言GPU 历史GPU 图形渲染流水线GPU 存储系统GPU 流处理器CPU-GPU 异构系统GPU 资源管理模型CPU-GPU 工作流屏幕图像显示原理引言原文链接 http://chuquan.me/2018/08/26/graphics-rending-principle-gpu/作为程序员,我们或多或少知道可视化应用程序都是由 CPU 和 GPU 协作执行的。那么我们就先来了...

2020-07-14 16:50:11 5458 1

原创 使用echo输出带颜色的字体

使用echo输出带颜色的字体一、格式二、参数含义三、示例一、格式linux终端下输出带颜色的文字只需在文字前面添加如下格式\033[显示方式;前景色;背景色m其中\033是ESC健的八进制,\033[即告诉终端后面是设置颜色的参数,显示方式,前景色,背景色均是数字二、参数含义显示方式意义0终端默认设置1高亮显示4使用下划线5闪烁7反白显示8不可见前景色背景色颜色3040黑色31

2020-07-14 10:47:50 1647 2

原创 在shell中使用 &lt &lt EOF EOF简化输入

一、说明在shell脚本中(bash编程),<<EOF表示后续的输入作为子命令或子Shell的输入,直到遇到EOF为止,再返回到主Shell。而EOF可以换成任何其他字符都可以。二、如果在fdisk命令使用<< EOF EOF简化输入,#!/bin/bashfdisk /dev/mmcblk0 <<EOFd3np 3wEOF上面完成的是如下向导的操作:fdisk /dev/mmcblk0执行命令:d (删除分区命令)输入:3 (删除第

2020-07-14 10:20:51 1173

原创 Shell脚本中$0、$?、$!、$$、$*、$#、$@等的意义以及linux命令执行返回值代表意义

一、(1) Shell脚本中$0、$?、$!、$$、$*、$#、$@等的意义说明1.1、简要说明$$ Shell本身的PID(ProcessID,即脚本运行的当前进程ID号)$! Shell最后运行的后台Process的PID(后台运行的最后一个进程的进程ID号)$? 最后运行的命令的结束代码(返回值)即执行上一个指令的返回值 (显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误)$- 显示shell使用的当前选项,与set命令功能相同$* 所有参数列表。如"$*

2020-07-14 10:12:24 501

转载 多种方法使用c语言读写文件(总结)

一:打开文件句柄//参数1:文件路径//参数2:文件打开模式函数执行成功返回文件流指针,错误返回NULL。FILE *fopen(const char *path, const char *mode); 模式               操作            &n...

2020-07-09 17:25:55 7324

原创 简单明了的在linux格式化u盘

1.首先查看u盘的分区sudo fdisk -l 查看磁盘分区2.现卸载u盘分区umount /dev/sdb13.格式化命令mkfs.vfat /dev/sdb1

2020-06-28 14:22:36 300

学习进程间通信的示例代码

学习进程通信的例子,管道、消息队列、信号量以及共享内存。可以直接运行,参考readme文档。从代码学习知识更快理解进程间通信。。

2020-04-14

空空如也

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

TA关注的人

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