tumblerman的专栏

私信 关注
tumblerman
码龄13年
  • 191,643
    被访问量
  • 21
    原创文章
  • 46,654
    作者排名
  • 49
    粉丝数量
  • 于 2008-04-16 加入CSDN
获得成就
  • 获得16次点赞
  • 内容获得48次评论
  • 获得26次收藏
荣誉勋章
兴趣领域
  • #硬件开发
    #硬件工程#单片机#FPGA开发#嵌入式硬件#arm开发#dsp开发#驱动开发#pcb工艺#硬件架构
TA的专栏
  • QT && GTK
    15篇
  • 信息奥赛
    2篇
  • 嵌入应用
    41篇
  • 控制理论
    11篇
  • 数学理论
    3篇
  • 机器视觉
    8篇
  • 程序设计
    15篇
  • 课题相关
    6篇
  • 深度学习
    3篇
  • ROS
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

emWin中TEXT_SetBkColor注意事项

刚好遇到这个问题,收录一下,转帖自:原贴:https://blog.csdn.net/xinxinsky/article/details/84110752 今天打算做个测试项目用emWin做界面,其中TEXT要设置背景色,调用方法为TEXT_SetBkColor(hItem, 0x0000FF00);按理说应该有绿色背景色的,在VS调试中也是显示绿色背景色的,但是到单片机中确没有背景色的显示,很无语,研究到最后发现启用了ARGB,那么将最高位透明度设置为0xFF即可,即TEXT_SetBk..
转载
47阅读
0评论
0点赞
发布博客于 4 月前

关于emWin显示矢量字体TTF所踩的坑

最近由于项目的需要,要在Stm32上使用emWin 图形界面,其中涉及到中文字符的显示。由于TTF矢量字库可以随意缩放的优势,一劳永逸,省得建立多个字库文件切换,所以决定使用该方式。 关于Stm32+emWin+TTF的使用方法原子哥、安富莱和野火都有较详细的说明,这里主要对具体使用过程中踩的坑进行说明。移植TTF的库及stm32端的代码,这个可以看几位大佬的教程。很多同学开始跑了一下几位大佬的例程,还行,然后就雄心勃勃的开始准备移植自己喜欢的字库进去了,但是我可以很明确的告诉你...
原创
211阅读
0评论
0点赞
发布博客于 5 月前

FontSubsetPack

在嵌入式系统开发及游戏开发时需要查看并修改字库文件的一个工具,通过该工具可以查看并修改字库文件的相关信息,并能创建自己的字库文件。
zip
发布资源于 5 月前

FontPruner-master.rar

在嵌入式系统开发中使用EmWin图形界面编写程序时,显示矢量字体TTF格式时,由于通常的字体文件都偏大,可以使用该软件对字库文件进行精简。
rar
发布资源于 5 月前

小米蓝牙鼠标在Ubuntu18.0.4下反应迟钝问题的解决

在Ubunt 18.04中使用小米蓝牙鼠标,发现鼠标活动范围特别小 ,反应非常迟钝,蓝牙鼠标设置里的速度调节调到最快还是很慢,网上查询资料,xset m 10 仍然无效。经过测试,后来发现得用xinput设置灵敏度才能解决。解决方法如下:设置鼠标灵敏度: xinput set-prop "pointer:MiMouse" "libinput Accel Speed" ...
原创
1131阅读
0评论
0点赞
发布博客于 2 年前

在linux下shell脚本中if中用到or怎么写

在使用NCS2的测试程序demo_squeezenet_download_convert_run.sh时,一旦添加“-d MYRAID”,总是出现错误:./demo_squeezenet_download_convert_run.sh: 第 54 行: [: 参数太多其中第54行代码如下: if [ "$target" = "MYRIAD" or "$target" = "...
原创
10086阅读
0评论
3点赞
发布博客于 2 年前

ubuntu16.04 安装gnome经典桌面

一直比较喜欢旧版本Ubuntu的Gnome风格的菜单栏,在Ubuntu16.0.4中可以执行指令:sudo apt-get install gnome-session-flashback安装完成,注销一下,点击圆形图标,选择经典桌面,就回到经典桌面了。...
原创
4070阅读
0评论
1点赞
发布博客于 2 年前

ubuntu 安装caffe(特别注意:ubuntu18.0.4 安装GPU版的caffe的命令是:sudo apt install caffe-cuda,而不是很多资料上的caffe-gpu)

Ubuntu InstallationFor Ubuntu (>= 17.04)Installing pre-compiled CaffeEverything including caffe itself is packaged in 17.04 and higher versions. To install pre-compiled Caffe package, just do...
转载
2873阅读
3评论
1点赞
发布博客于 3 年前

《深度学习 21天实战Caffe》读书笔记1

关于深度学习常见术语的通俗描述“有监督”学习:上课时,我们跟着老师一步一步学习。“无监督”学习:自主完成课后的作业。“训练数据集”:平时做的课后练习题。“测试数据集”:考试时卷面的题目。关于训练效果:“学霸”:训练效果其他人好,对测试数据集的所有情况如数家珍。“学渣”:完全没有训练或训练不充分,对测试数据集的效果和随机猜测差不多。“学痴”:在训练上出现“过拟合”,平...
原创
77阅读
0评论
0点赞
发布博客于 3 年前

OV9655 YUV采集参数

OV9655的数据手册对于YUV方式采集图像数据描述非常模糊,而且貌似还有一些错误,经过几天的实验研究终于获得了OV9655的YUV 数据,特将需要修改的关键参数注释如下:1.  COM7  地址 0x12           bit[1:0]=10(其中:00 RAW RGB data,01 RAW RGB interpolation,10 YUV, 11 RGB)2.  TSLB   
原创
2411阅读
0评论
1点赞
发布博客于 7 年前

stm32 DCMI接口CROP功能使用

最近使用stm32F407单片机通过摄像头采集图像进行处理,其中使用到DCMI接口CROP功能。但在网上找了很久,有用的资料不多,只能自己研究,特将自己的使用方法记录下来。     1.如何设置CROP。           定义:                DCMI_CROPInitTypeDef DCMI_CROPInitStruct;
原创
10863阅读
1评论
0点赞
发布博客于 7 年前

循环语句中一个不易发现的错误

今天在调试自己写的一个图像处理的程序时发现一个循环语句使用时不易发现的一个错误,平时得细节得不注意,搞了我一整天,留着以后参考。部分代码如下:unsigned int i,j; for(i=starty+1;i {       for(j=startx+1;j      {....      }}看出错误来了吗?取endy=0,或endx=0试试,程序不知道要运
原创
1404阅读
0评论
0点赞
发布博客于 7 年前

signal(SIGPIPE, SIG_IGN)

当服务器close一个连接时,若client端接着发数据。根据TCP 协议的规定,会收到一个RST响应,client再往这个服务器发送数据时,系统会发出一个SIGPIPE信号给进程,告诉进程这个连接已经断开了,不要再写了。   根据信号的默认处理规则SIGPIPE信号的默认执行动作是terminate(终止、退出),所以client会退出。若不想客户端退出可以把SIGPIPE设
转载
702阅读
0评论
0点赞
发布博客于 7 年前

C指针参数传递

C指针参数传递#include using namespace std ;void fn(int *p1){    int *p2=new int;    *p2=10;     p1=p2;}void main(){    int *p=new int;    fn(p);    cout}/*分析:乍一看这个程序的输出结果好像是1
转载
782阅读
1评论
0点赞
发布博客于 8 年前

fread读取yuv图像文件不完整的问题

症状:      今天测试视频处理算法,读取yuv图像数据,老是没按自己的意图出结果,后来测试代码,发现直接fread,然后原封不动的和fwrite,虽然文件大小是正常的,但保存的图像帧的后部分全为0;     原因:     window中文件读取很文本文件和二进制,默认是文本文件方式,该方式遇到\0,函数就认为到了末尾,不往下读下去了。    解决:    fopen文件的
原创
2605阅读
3评论
1点赞
发布博客于 8 年前

浮点数转字节组存储

浮点数转字节组存储,主要用于嵌入式等一些特殊情况,比如串口传数据,其主要思路是将浮点数(通常为4字节),每个字节单独传送,到接收端再将它们组合成一个浮点数即可。在C语言中,我们可以采用union方式实现。union f_data{float fdata;unsigned char cdata[4];}data; //单精度的浮点数,便于拆分字节//如果是双精度的则定义为
原创
2739阅读
0评论
0点赞
发布博客于 8 年前

MDK错误More than one section matches selector - cannot all be FIRST/LAST的解决

加入的启动代码为多个,实际只使用其中一个:       startup_stm32f10x_cl.s       startup_stm32f10x_hd.s       ...       startup_stm32f10x_xl.s方案1:删除不需要的方案2:除了实际需要使用的以外,其余全部点右键Options for File'***',勾去灰化的Include in
原创
5367阅读
5评论
0点赞
发布博客于 8 年前

关于volatile的使用

使用volatile,不让编译器进行优化,每次读取或修改值得时候,都必须重新从内存或寄存器读取或修改,而非从缓存处读取过期的值,保证每次读取的值绝对是实时的。一般,出现在如下几个地方:1.中断服务程序中修改的供其它程序检测的变量2.多任务环境下各任务间共享的标志3.存储器映射的硬件寄存器
原创
459阅读
0评论
0点赞
发布博客于 8 年前

仿人智能控制器的参数简化(已发表于《计算机测量与控制》2013年第4期)

原创
721阅读
0评论
0点赞
发布博客于 8 年前

QMessageBox::about()在系统托盘状态下确定后退出应用程序的解决

QMessageBox::about()在通常的窗口程序状况下,点击确认,只是关闭about窗口本身;但在系统托盘状态下点击确定,会将应用程序一并退出。解决办法如下:   在程序中加入:QApplication::setQuitOnLastWindowClosed(fal
原创
1650阅读
1评论
0点赞
发布博客于 10 年前

QT 系统托盘图标

QIcon icon = QIcon(":/images/icon.ico");加载图片setWindowIcon(icon);把图片设置到窗口上trayIcon = new QSystemTrayIcon(this);创建一个系统托盘图标trayIcon->setI
转载
2359阅读
0评论
0点赞
发布博客于 10 年前

S3C2440 下Sharp LQ080V3DG01屏能用的一组参数

        //.left_margin      = 44,  /*HFPD*/        //.right_margin     = 116, /*HBPD*/        //.hsync_len        = 96,  /*HSPW*/        //.upper_margin     = 19,  /*VFPD*/        //.lower_mar
原创
881阅读
0评论
0点赞
发布博客于 10 年前

arm-linux-gcc 与 gcc 关于字节对齐问题

方法1: #pragma pack(n)         使用伪指令#pragma pack (n),编译器将按照n 个字节对齐;        使用伪指令#pragma pack (),取消自定义字节对齐方式。        如果#pragma pack (n)中指定的n 大于结构体中最大成员的size,则其不起作用,结构体仍然按照size 最大的成员进行对界特别注意:该方法是在 gcc
原创
2109阅读
0评论
0点赞
发布博客于 10 年前

QT 设置程序界面风格

在main函数中QApplication::setStyle("plastique");风格可以是 "windows", "motif", "cde", "plastique", "windowsxp", or "macintosh"
转载
7731阅读
0评论
1点赞
发布博客于 10 年前

make: 警告:检测到时钟错误。您的创建可能是不完整的。

编译时候出现make: 警告:检测到时钟错误。您的创建可能是不完整的。某个文件修改时间在3.1+e07是由于内核时间和源程序的时间冲突用touch 命令把源程序的时间戳改一下find -exec touch {} /;然后make就好了
转载
1233阅读
0评论
0点赞
发布博客于 10 年前

linux下GBK->UTF-8文件编码批量转换脚本

linux下GBK->UTF-8文件编码批量转换脚本find default -type d -exec mkdir -p utf/{} /;find default -type f -exec iconv -f GBK -t UTF-8 {} -o utf/{} /;这两行命令将default目录下的文件
转载
721阅读
0评论
0点赞
发布博客于 10 年前

转帖一个最近用到的东西:“在QT下为开发板的键盘编写输入插件”,加上部分自己的补充说明

网上也有相同的文章,但在 QtCreator下不知道如何跟着网上的介绍来操作,所以写了此篇文章,照着做,保证有效 ^_^创建Qt的键盘插件,重点是创建两个类:一个基于QObject和QWSKeyboardHandler派生的键盘处理类(Handler)一个基于QKbdDriverPlugin派生的键盘插件类(Plugin)Handler类的主要作用是完成对底层键
转载
3340阅读
10评论
0点赞
发布博客于 10 年前

收藏一个实用技巧:linux下查看动态链接库so文件的依赖的相关组建发布时间

  我们很多c程序在windows下是以dll形式展现的,在linux则是以so 形式展现的。  windows一般不会因为编译dll文件的编译器版本不同而出先dll文件不能执行。  但是linux下,不同版本内核的linux下编译的c程序,在其他版本的linux下就容易出现无法执行的问题。主要可能是支持程序的内核相对于编译时的内核较高或者版本相对于编译时的内核较低。  那我们如何看别
转载
1646阅读
0评论
0点赞
发布博客于 10 年前

收藏一篇关于QT移植比较精彩的文章

QT移植中的浮点问题的简介与内容作者:lanxinyuchs   http://lanxinyuchs.iteye.com/blog/1037265 浮点问题的由来Inter Xscale这款新型高性能、低功耗的微构架兼容arm v5 te isa指令集,不过不支持浮点指令集。这是为了节省处理器芯片体积和降低运行功耗,XScale体系结构没有实现昂贵的浮点运算部件和除法部件。这些是嵌
转载
969阅读
0评论
0点赞
发布博客于 10 年前

Qt做启动界面

Qt做启动界面 如何用Qt做启动界面,说起来也很简单。其实只需要创建一个元件dialog,然后插入一张图片背景,用一个定时器,使其在主窗口显式之前显示规定的一段时间。       下面这里有一段代码:  int main(int argc, char *argv[])  { QTextCodec::setCodecForTr(QTextCodec::codecForName
转载
4698阅读
6评论
0点赞
发布博客于 11 年前

Qt SDK里面例子的索引和简单注释

Qt SDK里面例子的索引和简单注释examples//microsky2813@hitmail.com    activeqt        comapp        dotnet//.net        hierarchy        menus        multiple        opengl        qutlook        simple        w
转载
1854阅读
0评论
0点赞
发布博客于 11 年前

如何在程序中模拟键盘的按键事件?

QKeyEvent event(QEvent::KeyPress,Qt::Key_A,Qt::NoModifier);QApplication::sendEvent(mainWindow, &event);
转载
1303阅读
0评论
0点赞
发布博客于 11 年前

关于QT中enter的定义

在键盘上大enter QT里定义的是Qt::Return小键盘的是Qt::Key_Enter
转载
729阅读
0评论
0点赞
发布博客于 11 年前

Valgrind使用指南和错误分析

 Valgrind是一个GPL的软件,用于Linux(Forx86, amd64 and ppc32)程序的内存调试和代码剖析。你可以在它的环境中运行你的程序来监视内存的使用情况,比如C语言中的malloc和free或者C++中的new和delete。使用Valgrind的工具包,你可以自动的检测许多内存管理和线程的bug,避免花费太多的时间在bug寻找上,使得你的程序更加稳固
转载
6716阅读
0评论
0点赞
发布博客于 12 年前

Anjuta IDE 下调试程序容易忽略的一个问题

Anjuta IDE 下调试程序容易忽略的一个问题首先说一下我的系统环境:系统是Ubuntu 8.10,安装了build-essential,升级到最新版的gcc和libc等,其他还安装有gtk相关的库与开发环境,可以配合glade3进行gnome图形界面开发。平 时主要用的是Anjuta IDE,版本是2.4.1,应该是比较新的稳定版了。总体感觉不错,不过总觉得其内置的调试器
转载
2118阅读
1评论
0点赞
发布博客于 12 年前

mutex与semaphore的区别

mutex与semaphore的区别网摘1:Mutex 的发音是 /mjuteks/ ,其含义为互斥(体),这个词是Mutual Exclude的缩写。Mutex在计算机中是互斥也就是排他持有的一种方式,和信号量-Semaphore有可以对比之处。有人做过如下类比:    * Mutex是一把钥匙,一个人拿了就可进入一个房间,出来的时候把钥匙交给队列的第一个。一般的用法是用于串行化对critica
转载
2191阅读
0评论
0点赞
发布博客于 12 年前

一个关于函数内部指针参数返回的错误调试及分析

一个关于函数内部指针参数返回的错误调试及分析 在C语言中如下两个概念是非常重要,但又是极其容易在编程中出问题的:1.       C语言中指针存储的是一个地址,而非实际的数据项内容。2.       C语言中函数内部定义的变量的作用域或生存空间只在函数内。下面就本人在编程中出现的一个错误代码进行分析,(这个代码出的问题就是以上2点。)除此之外提出一个gcc导致该程序费了很大功夫
原创
891阅读
0评论
0点赞
发布博客于 12 年前

V4L2中两个关于图像占用空间大小的结构体项的理解

1.struct v4l2_pix_format 中的sizeimage 其说明为:       Size in bytes of the buffer to hold a complete image, set by the driver.Usually this is bytesperline times height. When the image consists of variablel
原创
955阅读
0评论
0点赞
发布博客于 12 年前

Linux操作系统线程同步:互斥量(mutex)

互斥量从本质上说就是一把锁, 提供对共享资源的保护访问。  1. 初始化: 在Linux下, 线程的互斥量数据类型是pthread_mutex_t. 在使用前, 要对它进行初始化:  对于静态分配的互斥量, 可以把它设置为PTHREAD_MUTEX_INITIALIZER, 或者调用pthread_mutex_init.  对于动态分配的互斥量, 在申请内存(mallo
转载
602阅读
0评论
0点赞
发布博客于 12 年前

程序编制的几点小窍门

对于理工科的科研工作者来说,编制程序是不可避免的。许多人常常为了程序中的一点点小错误花费了大量的时间进行调试,令人非常头疼。那么如何在编制程序中尽量少出现错误,尤其是低级错误呢?我总结了以下几点: 1、对于比较大的,算法比较复杂的程序,一定要把算法写清楚明白。有什么样的算法就会有什么样的程序,只要算法合理,可行,那么程序一定能够编制出来。所以算法是最关键的,在脑子里要非常清楚,而且要把它按
转载
664阅读
0评论
0点赞
发布博客于 12 年前

逻辑地址、线性地址、物理地址和虚拟地址

一、概念物理地址(physical address)用于内存芯片级的单元寻址,与处理器和CPU连接的地址总线相对应。—— 这个概念应该是这几个概念中最好理解的一个,但是值得一提的是,虽然可以直接把物理地址理解成插在机器上那根内存本身,把内存看成一个从0字节一直到最大空量逐字节的编号的大数组,然后把这个数组叫做物理地址,但是事实上,这只是一个硬件提供给软件的抽像,内存的寻址方式并不是这样。所以,说它
转载
365阅读
0评论
0点赞
发布博客于 12 年前

Linux系统下的多线程编程入门

引言  线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80 年代中期,solaris是这方面的佼佼者。传统的Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多进程。现在,多线程技术已经被许多操作系统所支持,包括Windows/NT,当然,也包括Linux。  为什么有了进程的概念后,还要再引入线程呢?使用多线程到底
转载
351阅读
0评论
0点赞
发布博客于 12 年前

如何阅读源代码

分析一个源代码,一个有效的方法是: 1、阅读源代码的说明文档,比如本例中的README, 作者写的非常的详细,仔细读过之后,在阅读程序的时候往往能够从README文件中找到相应的说明,从而简化了源程序的阅读工作。 2、如果源代码有文档目录,一般为doc或者docs, 最好也在阅读源程序之前仔细阅读,因为这些文档同样起了很好的说明注释作用。 3、从makefile文件入手,分析源代码的层次结构,找出
转载
365阅读
0评论
0点赞
发布博客于 12 年前

linux编程段错误及调试方法

总而言之,产生段错误就是访问了错误的内存段,一般是你没有权限,或者根本就不存在对应的物理内存,尤其常见的是访问0地址.一般来说, 段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来保存的,他是一个48位的寄存器,其中的32位是保存由它指向的 gdt表,后13位保存相应于gdt的下标,最后3位包括了程序是否在内存中以及程序的在cpu中的运行级别,指向的gdt是由以64位
转载
655阅读
0评论
0点赞
发布博客于 12 年前

GDB高级技巧

本文主要示例一些平常较少使用到的GDB功能,掌握这些用法有助于提高GDB调试和解决问题的能力。 1) 查看宏 默认情况下,在GDB中是不能查看宏的值及定义的,但通过如下方法,则可以达到目的: 编译源代码时,加上“-g3 -gdwarf-2”选项,请注意不是“-g”,必须为“-g3”,查看宏的值使用命令p,这和查看变量的值的方法相同,如果想查看宏的定义,使用“-macro expand”命令即可 2
转载
660阅读
0评论
0点赞
发布博客于 12 年前

使用 GDB 调试多进程程序

 GDB 是 linux 系统上常用的调试工具,本文介绍了使用 GDB 调试多进程程序的几种方法,并对各种方法进行比较。GDB 是 linux 系统上常用的 c/c++ 调试工具,功能十分强大。对于较为复杂的系统,比如多进程系统,如何使用 GDB 调试呢?考虑下面这个三进程系统:Proc2 是 Proc1 的子进程,Proc3 又是 Proc2 的子进程。如何使用 GDB 调试 proc2 或者
转载
487阅读
0评论
0点赞
发布博客于 12 年前

V4L2应用程序框架

V4L2较V4L有较大的改动,并已成为2.6的标准接口,函盖video/dvb/FM...,多数驱动都在向V4l2迁移。更好地了解V4L2先从应用入手,然后再深入到内核中结合物理设备/接口的规范实现相应的驱动。本文先就V4L2在视频捕捉或camera方面的应用框架。V4L2采用流水线的方式,操作更简单直观,基本遵循打开视频设备、设置格式、处理数据、关闭设备,更多的具体操作通过ioctl函数来实现。
转载
1656阅读
4评论
0点赞
发布博客于 12 年前

GDB远程调试

GDB远程调试1. 到http://www.gnu.org/software/gdb下载gdb-6.6.tar.gz到/tmp目录     2. 解压到/opt目录下 #cd /opt #tar xzvf /tmp/gdb-6.6.tar.gz 3. 建立配置文件、编译 gdb允许把编译配置和编译结果放到任意的目录,因此可以在gdb目录之外建立一个专门存放编译结果的目录。 #cd /opt
转载
728阅读
0评论
0点赞
发布博客于 12 年前

Gtk的重绘功能

  Gtk的绝大多数构件都是支持重绘功能的。什么是重绘?重绘就是操作系统运行多窗口程序,或是多个有窗口程序时,一个窗口将另一个窗口遮盖,之后这个在最上面(TopLevel)的窗口被最小化或是关掉之后,其下面的窗口重新显示出来。这个就叫做“重绘”。    不知道是由于什么原因,gtk的构件中,GtkDrawingArea就不支持“重绘”,需要程序员手动设置“重绘”,基本上包括重绘的界面一切细节,都要
转载
2636阅读
0评论
0点赞
发布博客于 12 年前

GTK 绘图相关函数

1.回调函数configure_event,创建窗口时调用该函数,创建一块新的PIXMAP。gboolean configure_event(GtkWidget *widget, GdkEventConfigure *event, gpointer data) {    if(pixmap)        g_object_unref(pixmap);    //Create the new pi
原创
1350阅读
0评论
0点赞
发布博客于 12 年前

贝叶斯

贝叶斯【理论概述】  贝叶斯 Thomas Bayes,英国数学家.1702年出生于伦敦,做过神甫。1742年成为英国皇家学会会员。1763年4月7日逝世。贝叶斯在数学方面主要研究概率论。他首先将归纳推理法用于概率论基础理论,并创立了贝叶斯统计理论,对于统计决策函数、统计推断、统计的估算等做出了贡献.1763年发表了这方面的论著,对于现代概率论和数理统计都有很重要的作用。贝叶斯
转载
700阅读
0评论
0点赞
发布博客于 12 年前

概率、先验概率、后验概率

概率、先验概率、后验概率 对上帝来说,一切都是确定的,因此概率作为一门学问存在,正好证明了人类的无知。好在人类还是足够聪明的,我们并没有因为事物是随机的而束手无措,我们根据事物的可能性来决定我们的行为。比如,某个人抢银行之前,一定反反复复考虑过各种可能性。如果人们要等到一切都确定后再做,那么你可能什么都做不了,因为几乎一切都是随机的。 一个事情有N种发生的可能性,我们不能确信哪种会发生
转载
858阅读
2评论
0点赞
发布博客于 12 年前

写得蛮好的linux学习笔记

写得蛮好的linux学习笔记 linux目录架构/   根目录/bin    常用的命令 binary file 的目錄/boot   存放系统启动时必须读取的档案,包括核心 (kernel) 在内     /boot/grub/menu.lst   GRUB设置     /boot/vmlinuz   内核     /boot/in
转载
591阅读
0评论
0点赞
发布博客于 12 年前

自适应控制

自适应控制  在日常生活中,所谓自适应是指生物能改变自己的习性以适应新的环境的一种特征。因此,直观地说,自适应控制器应当是这样一种控制器,它能修正自己的特性以适应对象和扰动的动态特性的变化。  自适应控制的研究对象是具有一定程度不确定性的系统,这里所谓的“不确定性”是指描述被控对象及其环境的数学模型不是完全确定的,其中包含一些未知因素和随机因素。  任何一个实际系统都具有不同程度的不确定性,这
转载
1426阅读
1评论
0点赞
发布博客于 12 年前

人工神经网络(Artificial Neural Networks, ANN)

人工神经网络  人工神经网络(Artificial Neural Networks, ANN),一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。人工神经网络具有自学习和自适应的能力,可以通过预先提供的一批相互对应的输入-输出数据,分析掌握两者之间潜在的规律,最终根据这些规律,用新
转载
7320阅读
0评论
0点赞
发布博客于 12 年前

粗糙集

 粗糙集理论及其应用  摘 要 在很多实际系统中均不同程度地存在着不确定性因素, 采集到的数据常常包含着噪声,不精确甚至不完整. 粗糙集理论是继概率论,模糊集,证据理论之后的又一个处理不确定性的数学工具. 作为一种较新的软计算方法, 粗糙集近年来越来越受到重视, 其有效性已在许多科学与工程领域的成功应用中得到证实, 是当前国际上人工智能理论及其应用领域中的研究热点之一.   本文介绍了粗糙集理
转载
3122阅读
0评论
0点赞
发布博客于 12 年前

模拟退火

模拟退火  模拟退火是一种通用概率算法,用来在一个大的搜寻空间内找寻命题的最优解。  “模拟退火”来自冶金学的专有名词淬火  “模拟退火”的原理也和金属退火的原理近似:我们将热力学的理论套用到统计学上,将搜寻空间内每一点想像成空气内的分子;分子的能量,就是它本身的动能;而搜寻空间内的每一点,也像空气分子一样带有“能量”,以表示该点对命题的合适程度。算法先以搜寻空间内一个任意点作起始:每
转载
871阅读
0评论
0点赞
发布博客于 12 年前

遗传算法(GA)

遗传算法遗传算法定义遗传算法(Genetic Algorithm)是模拟达尔文的遗传选择和自然淘汰的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法,它是有美国Michigan大学J.Holland教授于1975年首先提出来的,并出版了颇有影响的专著《Adaptation in Natural and Artificial Systems》,GA这个名称才逐渐为人
转载
9719阅读
1评论
1点赞
发布博客于 12 年前

微粒群算法

微粒群算法  微粒群算法,又称粒子群优化(Particle Swarm Optimization, PSO),是由J. Kennedy和R. C. Eberhart等于1995年开发的一种演化计算技术,来源于对一个简化社会模型的模拟。其中“群(swarm)”来源于微粒群符合M. M. Millonas在开发应用于人工生命(artificial life)的模型时所提出的群体智能的5个基本原则。
转载
1472阅读
0评论
0点赞
发布博客于 12 年前

粒子群算法(PSO)

粒子群算法  粒子群算法介绍  优化问题是工业设计中经常遇到的问题,许多问题最后都可以归结为优化问题. 为了解决各种各样的优化问题,人们提出了许多优化算法,比较著名的有爬山法、遗传算法等.优化问题有两个主要问题:一是要求寻找全局最小点,二是要求有较高的收敛速度. 爬山法精度较高,但是易于陷入局部极小. 遗传算法属于进化算法( Evolutionary Algorithms) 的一种,它通过模仿
转载
4892阅读
0评论
1点赞
发布博客于 12 年前

蚁群算法ACO (Ant Colony Optimization)

蚁群算法小小的蚂蚁总是能够找到食物,他们具有什么样的智能呢?设想,如果我们要为蚂蚁设计一个人工智能的程序,那么这个程序要多么复杂呢?首先,你要让蚂蚁能够避开障碍物,就必须根据适当的地形给它编进指令让他们能够巧妙的避开障碍物,其次,要让蚂蚁找到食物,就需要让他们遍历空间上的所有点;再次,如果要让蚂蚁找到最短的路径,那么需要计算所有可能的路径并且比较它们的大小,而且更重要的是,你要小心翼翼的编程,
转载
1113阅读
0评论
0点赞
发布博客于 12 年前

颜色空间模型

 HSV颜色空间 HSV(hue,saturation,value)颜色空间的模型对应于圆柱坐标系中的一个圆锥形子集,圆锥的顶面对应于V=1. 它包含RGB模型中的R=1,G=1,B=1 三个面,所代表的颜色较亮。色彩H由绕V轴的旋转角给定。红色对应于 角度0° ,绿色对应于角度120°,蓝色对应于角度240°。在HSV颜色模型中,每一种颜色和它的补色相差180° 。饱和度S取值从0到1,所以
转载
3072阅读
0评论
1点赞
发布博客于 12 年前

目标跟踪小结

一、引言:在需要监控的环境里,如何能够判断出进入特定区域的目标,并且能够跟踪目标的轨迹。分为两种情况:一是静态背景下的目标跟踪;二是动态背景下的目标跟踪。二、静态背景下的目标跟踪方法   1、单目标:目标跟踪还可以分为单目标的跟踪和多目标的跟踪。单目标的静态背景下的目标跟踪指的是摄像头是固定在某一方位,其所观察的视野也是静止的。通常采用背景差分法,即先对背景进行建模,然后从视频流中读取图像
转载
23990阅读
6评论
4点赞
发布博客于 12 年前

卡尔曼滤波简介

卡尔曼滤波器 – Kalman Filter1.    什么是卡尔曼滤波器(What is the Kalman Filter?)在学习卡尔曼滤波器之前,首先看看为什么叫“卡尔曼”。跟其他著名的理论(例如傅立叶变换,泰勒级数等等)一样,卡尔曼也是一个人的名字,而跟他们不同的是,他是个现代人!卡尔曼全名Rudolf Emil Kalman,匈牙利数学家,1930年出生于匈牙利首都布达
转载
4516阅读
0评论
0点赞
发布博客于 12 年前

《机器人视觉测量与控制》读书笔记1

机器人视觉的基本概念1.摄像机标定(Camera Calibration):对摄像机的内部参数、外部参数进行求取的过程。2.视觉系统标定(Vision System Calibration):对摄像机和机器人之间关系的确定。3.手眼系统(Hand-Eye System):又摄像机和机械手构成的机器人视觉系统。4.Eye-in-Hand:摄像机安装在机械手末端并随机械手一起运动的视觉
原创
2768阅读
2评论
1点赞
发布博客于 13 年前

《智能控制导论》读书报告(课程作业)--常规控制的智能化

    《智能控制导论》读书报告 常规控制的智能化       学 生:xxx学 号:xxxx指导教师:xxx专 业:控制工程  xx大学自动化学院
原创
8334阅读
1评论
0点赞
发布博客于 13 年前