登录
首页 » Others » 张正友相机标定matlab实现

张正友相机标定matlab实现

于 2020-12-09 发布
0 236
下载积分: 1 下载次数: 3

代码说明:

张正友相机棋盘标定法的matlab的实现代码,不包括图像棋盘角点检测部分

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • 分数阶PID
    本人编写的分数阶PID程序,可下载来研究。
    2021-05-06下载
    积分:1
  • 欢迎界面 labview
    使用labview来写一个欢迎登陆的界面,包括一些程序的跳转
    2020-12-07下载
    积分:1
  • 自适应滤波器设计及Matlab实现
    简单描述自适应滤波的原理及在MATLAB中实现的方法,并辅以相关MATLAB代码供大家交流。1绪论11引言人类传递信息的主要媒介是语言和图像。据统计,在人类接受的信息中,听觉信息占20%,视觉信息占60%,其它如味觉、触觉、嗅觉总的加起来不过占20%,所以图像信息是十分重要的信息。然而,在图像的获取和图像信号的传输过程中,图像信号中不可避免的混入各种各样的随机噪声,造成图像失真(图像退化)。造成人类所获取的信息和实际是有偏差的,成为人类从外界获取准确信息的障碍。因此,对图像信号中的随杋噪声的抑制处理是图像处理中非常重要的一项工作在图像的获取和传输过程中所混入的噪声,主要来源于通信系统中的各种各样的噪声,根据通信原理及统计方面的知识,可以知道在通信系统中所遇到的信号和噪声,大多数均可视为平稳的随机过稈。又有“高斯过程又称正态随机过程,它是一种普遍存在和重要的随机过程,在通信信道中的噪声,通常是一种高斯过程,故又称高斯噪声。囚此,在大多薮的情况下,我们可以把造成图像失真的噪声可视为广义平稳高斯过程本文针对图像信号中混入的随机噪声,在怎样把现有的滤波算法应用到实际的图像复原中去的问题上提出了解决方法,并且应用 Matlab软件编程对图像进行处理。1.2研究目标及现状121图像复原技术的目标为了从含有噪声的数据中提取我们所感兴趣的、接近规定质量的图像,我们需要设计个系统满足:当信号与噪声同时输入吋,在输出端能将信号尽可能精确地重现出来,而噪声却受到最大抑制,即最佳滤波器。122图像复原抆术的研究现状日前的图像复原技术,即去噪的滤波技术可以分为两大类:传统滤波和现代滤波。传统滤波技术是建立在已知有用信号和干扰噪声的统计特性(自相关函数或功率谱)基础上的噪声去除;现代滤波技术则是不需要知道图像的先验知识,只是根据观测数据,即可对噪声进行有效滤除。早在20世纪40年代,就对平稳随机信号建立了维纳滤波理论。根据有用信号和干扰噪声的统计特性(自相关函数或功率谱),以线性最小均方误差(MSE)估计准则所设计的最佳滤波器,称为维纳滤波器。这种滤汲器能最大程度的滤除干扰噪声,提取有用信号。但是,当输入信号的统计特性偏离设计条件,则它就不再是最佳的了,这在实际应用中受到了限制。到60年代初,由于空间技术的发展,出现了卡尔曼滤波理论,即利用状态变量模型对非平稳、多输入多输出随机序列作最优估计。卡尔曼滤波器既可以对平稳的和平稳的随机信号作线性最佳滤波,也可以作为非线性滤波[2]。然而只有在对信号和噪声的统计特性已知的情况下,这两种滤波器才能获得最优解。在实际的应用中,往往无法得到这些统计特性的完验知识,或者统计特性是随时间变化的,因此,这两种滤波器就实现不了真正的最佳滤波。Widrow B.和Hof于1967年提出的自适应滤波理论,可使在设计自适应滤波器时不需要事先知道关于输入信号和噪声的统计特性的知识,它能够在自己的工作过程中逐渐估计出所需的统计特性,并以此为依据自动调整自己的参数,以达到最佳滤波效果。一旦输入信号的统计特性发生变化,它又能够跟踪这种变化,自动调整参数,使滤波器性能重新达到最佳。自适应滤波器自动调节参数可以通过各和不同的递推算法来实现,由于它采用的是逼近的算法,使得实际估计值和理论值之间必然存在差距,也就造成了自适应滤波问题没有唯一的解。依照各种递推算法的特点,我们把它应用于不同的场合。现在广为应用的自适应滤波方法主要是基于以下几种基本理论,再融合递推算法导出来的:(1)基于维纳滤波理论的方法维纳滤波是在最小均方误差准则下通过求解维纳霍夫方程来解决线性最优滤波问题的。基于维纳滤波原理,我们利用相关的瞬时值通过在工作过程中的逐步调整参数逼近信号的统计特性,实现最优滤波。由此,我们得到一种最常用的算法—最小均方算法,简称LMS算法。(2)基于卡尔曼滤波理论的方法卡尔曼滤波是线性无偏最小方差滤波递推滤波,它能使滤波器工作在平稳的或非平稳的环境,得到最优解。利用卡尔曼滤波理论的递推求解法导出自适应滤波器更新权矢量得不同递推算法。比LMS算法有极快的收敛速率,可是计算复杂度也增大∫,它需要计算卡尔曼矩阵。(3)基于最小二乘准则的方法维纳滤波和卡尔曼滤波推导的算法是基于统计概念的,而最小二乘佔计算法是以最小误差平方和为优化目标的。根据滤波器的实现结构,有以下3种不同的最小二乘自适应滤波算法:自适应递归最小二乘法(RLS),自适应最小二乘格型算法,QR分解最小二乘算法。(4)基于神经网络理论的方法神经网络是有大量的神经元相互连接而成的网络系统,实质上它是一个高度非线性的动力学网络系统,这个系统具有很强的自适应、自学习、自组织能力,以及巨量并行性、容错性和坚韧性,因而,它可以做很多传统的信号和信息处理技术所不能做的事情。因其超强的自动调节能力,使符它在自适应信号处理方面有着广阔的前景[2]在一系列的自适应算法中,虽然基于后面3种基本理论的方法在收敛速率和稳定、坚韧性方面有着更好的性能,但是,基于维纳滤波理论的IMS算法因其算法简单,而且能达到满意的性能,得到了青睐,成为了应用最广泛的自适应算法。为此,本文主要研究LMS自适应滤波器在图像去噪方面的应用。2理论基础21基本自适应滤波器的模块结构自适应滤波器通常由两部分构成,其一是滤波子系统,根据它所要处理的功能而往往有同的结构形式。另一是自适应算法部分,用来调整滤波子系统结构的参数,或滤波系数。在自适应调整滤波系数的过程中,有不同的准则和算法算法是指调整自适应滤波系数的步骤,以达到在所描述的准则下的误差最小化。自适应滤波器含有两个过程,即自适应过程和滤波过程。前一过程的基本目标是词节滤波系数"(),使得有意义的目标函数或代价函数()最小化,滤波器输出信号y()逐步逼近所期望的参考信号4k),由两者之间的误差信号(k)驱动某种算法对滤波系数进行调整,使得滤波器处于最佳工作状态以实现滤波过程。所以自适应过程是一个闭合的反馈环,算法决定了这个闭合环路的自适应过程所需要的时间。但是,由于目标函数)是输入信号(k),参考信号(k)及输出信号y(k)的函数,即20=ack,.y,因此目标函数必须具有以下两个性质(1)非负性g (=8[x(k), d(k), y(k] 20Vx(), u(k), y(k)(2.1)(2)最佳性E()=E[x(k),d(k),y(k)]=0(22在自适应过程中,自适应算法逐步使目标函数(最小化,最终使()逼近于(),滤波参数或权系数()收敛于",这里"是自适应滤波系数的最优解即维纳解。因此,自适应过程也是自适应滤波器的最佳线性估计的过程,既要估计滤波器能实现期望信号()的整个过程,又要估计滤波权系数以进行有利于主要目标方向的调整。这些估计过程是以连续的时变形式进行的,这就是自适应滤波器需要有的自适应收敛过程。如何缩短自适应收敛过程所需要的收敛时间,这个与算法和结构有关的问题时人们一直重视研究的问题之—[2]。当然滤波子系统在整个自适应滤波器的设计中也占有很重要的地位,因为它对最终的滤波性能有很大的影响。本文要研究的是基于维纳滤波原理的LMS算法,那么下面我们需要介绍一下基本维纳滤波原理。22基本维纳滤波原理基本维纳滤波就是用来解决从噪声中提取信号问题的一种过滤(或滤波)方法。它基于平稳随机过程模型,且假设退化模型为线性空间不变系统的。实际上这种线性滤波间题,可以看成是种估计问题或种线性佔计问题。基本的维纳滤波是根据全部过去的和当前的观察数据来估计信号的当前值,它的解是以均方误差最小条件下所得到的系统的传递函数万(3)或单位样本响应h(k)的形式给出的,因此更常称这种系统为最住线性过滤器或滤波器。设计维纳滤波器的过程就是寻求在最小均方误差下滤波器的单位样本响应h(k)或传递函数h(x)的表达式,其实质是解维纳-霍大( Wiener-Hopf方程。基木维纳滤波器是这样的,有两个信号x(k)和y(k)同时加在滤波器上。典型地y(k)包含一个与x(k)相关地分量和另一个与x(k)个相关地分量。维纳滤波器则产生y(k)中与x(k)相关分量地最优估计,再从y(k)中减去它就得到ε(k)。y(kak)输出rk)维纳德波n=∑v(D)x(k-)f=0图21基本维纳滤被模型假定一个N个系数(权值)的FR滤波器的结构,维纳滤波和原始信号y(k)之间的差信号c(k)为ek= yk-nk=ye∑w(i)x(23)其中和w分别为输入信号矢量和权矢量,由下式确定(24)k-N-1)H(N-1)误差平方为2Y, x,w+w x.x,w对(3)式两边取期望得到均方误差(MSE),若输入x(k)与输出yk)是联合平稳的,则ELel=Ely,-2ELYXiwItElwx, x, w2.62P其中E[代表期望,=Ex是(k)的方差,P=E[yx1是长度为N地互相关矢量,R=Exx是NxN的自相矩阵。一个MSE滤波系数的图形是碗形地,且只有唯一地底部,这个图称为性能曲面,它是非负的。性能曲面地梯度可由下式给出2P+2R(2.7)Ytrim图22误差性能曲面每组系数w(i)(i=1,2,N-1)对应曲面是一点,在由面是地最小点梯度为0滤波权矢量达到最优”呷R P(28)即著名的维纳霍夫方稈的解。自适应滤波地仟条是采用合适的算法来调节滤波权重W,0)W,1),…W,N-1),从而找到性能曲面地最优点维纳滤波的实际用途有限,因为:(1)它需要已知自相关矩阵R和可相关矢量P,这两个量通常是未知的。(2)它包含∫矩阵的求逆,非常的耗时3)若信号为非平稳的,则R和P是时变的,导致必需重复计算。对于实际的应用需要一种能够依次加入地抽样点而得到"的算法。自适应算法就就是用于达到这个目的,而且不需显式计算R和P或进行矩阵求逆[3]3自适应滤波原理及算法在实际应用中常常会遇到这样的情况:随机信号的统计特性是未知的,或者信号的统计特性是缓慢的变化着的(非≯稳信号),这就促使人们去研究一类特殊的滤波器,这类滤波器具有以下特点:当输入过程的统计特性未知时,或者输入过程的统计特性变化时,能够相应的调整自身的参数,以满足某种准则的要求,由于这类滤波器能变动自身的参数以“适应”输入过程统计特性的估计或变化,因此,就把这类滤波器称为自适应滤波器41。在本文中我们研究的是退化图像复原的问题,由于图像自身的多样性和所混入的噪声的随机性和多样性,我们选择自适应滤波取出图像中混入的噪声。3.1横向滤波结构的最陡下降算法3.11最陡下降算法的原理首先考虑如下图所示的横向FIR自适应滤波器x(k-1k-2)x、-M+2)xR-M+l)e自适应控制算法1图31自适应横向滤波器结构它的输入序列以向量的形式记为X(k)=[x(k)x(k-1)(k-M+1)(3.1假设x()取自一均值为零,自相关矩阵为R的广义平稳随机过程,而滤波器的系数矢量(加权矢量)为:k)=[w,(k)w2(k)(32)以上二式中括号内的k为时间指数,因此,X()和W()分别表示时刻k的滤波器输入序列和加权值,滤波器的输山y(k)为:y(k)=∑w(n)x(n-t+1)33)式中M为滤波器的长度。图31中的“k称为“期望理想响应信号”,有时也可称为“训练信号”,它决定了设计最佳滤波器加权向量W(k)的取值方向。在实际应用中,通常用一路参考信号来作为期望响应信号。(k)是滤波器输出y(k)相对于a(k)的误差,即e(k)=d(k)-v(h)(34)显然,自适应滤波控制机理是用误差序列(k按照某种准则和算法对其系数w)n),=1.2…,M进行调节的,最终使自适应滤波的目标(代价)函数最小化,达到最佳滤波状态。按照均方误差(MSE)准则所定义得目标函数是E(h)=Ele()(35)eId()-2d(k)y(k)+y(k)将式(3.4)代入式(3.5),目标函数可以化为c(k)=Ele(k)(3.6)E[d(k)]-2Eld(kw(k)x(k]+ elw(kX(eX(s)w(k)当滤波系数固定时,目标函数又可以写为c(k=[d(k]-2W(k)P+W(k)RW (k)(3.7)其中,P-趴是长度为N的期望信号与输入信号的互相关矢量,R=Exx是Nx的输入向量得自相关矩阵。由式(37)可见,自适应滤波器的目标函数()是延迟线抽头系数(加权或滤波系数)的二次函数。当矩阵R和矢量P已知时,可以由权矢量W(k)直接求其解。现在我们将式(3.7)对W求倒数,并令其等于零,同时假设R是非奇异的,由此可以得到目标函数最小的最佳滤波系数w为R P(38)
    2020-11-28下载
    积分:1
  • java web招生考试报名系统(原生servlet开发)
    系统业务流程分析:1、招生管理员发布招考信息2、考生自行注册账号、在线填写报名信息、上传电子照片并打印报名表3、考生到招考单位现场确认报考信息并缴纳报名费4、教务管理员为缴费学生分配准考证号并安排考场5、考生在线打印准考证并按时参加考试6、招生管理员将阅卷成绩录入系统7、招生管理员确定录取分数线8、考生在线查询考试成绩及录取情况系统功能介绍:1)考生用户注册功能、登录系统、查看登录历史、修改密码、退出系统、查看报考须知、在线报名、上传照片、报名表打印、准考证打印、成绩与录取查询管理员用户(包括系统管理员、招生管理员和教务管理员)的共有功能:登录系统、当前系统状态、查看
    2020-11-28下载
    积分:1
  • AC_DC_AC_13b单相背靠背动态电压恢复器.mdl
    【实例简介】此仿真是单相背靠背动态电压恢复器,前级是PWM整流器,后级是动态电压恢复器,当网侧电压正负20%波动时,负载电压保持稳定,THD趋于零。当网侧电压波动时,直流侧电压能在0.05s内重新到达稳态,闭环效果非常好。网侧电流THD
    2021-12-12 00:42:10下载
    积分:1
  • 复杂网络度分布图的matlab代码
    复杂网络聚类系数的matlab编程代码,将复杂网络存储为矩阵,再对其matLab编程,可得到度分布图
    2020-12-12下载
    积分:1
  • ARM LINUX入门与实践
    一个嵌入式爱好者的自学体验,从零介绍ARM和LINUX的方方面面博客稳阁丛书程方网名阿南曰曰强个嵌入式爱好者的自学体验南编著与实践京航空统无荟出版社内容简介本书是以作者自学、应用嵌入式 Linux时的笔记(包括实验、出现的问题、调试过程、经验总结等)为基础,再增加应用到的硬件平台而成的。全书以亲自制作实验平台硬件,亲自设计实验软件为线索,指导读者从零开始学习到最终掌握ARM和 Linux应用的方方面面。全书可以分成ARM硬件、ARM前后台系统应用和基于Lnux系统的应用3个部分。ARM硬件部分包括整个硬件的原理分析、原理图、PCB板的绘制、元件焊接、硬件的检测与调试。ARM前后台系统应用部分包括启动代码、处理器内部外设、扩展外部设备及接口等的所有底层软件分析与实现,还有 Bootloader、文件系统、GUI等的原理与实现。 Linux系统的应用部分包括基于PC机的操作、应用编程和驱动、嵌入式 Linux的汗发环境创建、各种硬件的驱动实现、网络编程、图形用户界面设计等。本书可作为有志于掌握ARM、 Linux等嵌入式技术的高校学生、工程师等的参考书。图书在版编目(CIP)数据ARM Linux人门与实践/程昌南,方强编著.一北京:北京航空航天大学出版社,2008.10ISBN978-7-81124-422-9I.A…Ⅲ.①程…②方…Ⅲ.①微处理器,ARM系统设计② Linux操作系统一系统设计Ⅳ.TP332TP316.89肀国版本图书馆CIP数据核字(2008)第150813号c2009,北京航空航天大学出版社,版权所有。未经本书出版者书面许可,任何单位和个人不得以任何形式或手段复制本书及光盘内容。侵权必究。ARM Linux入门与实践一个嵌入式爱好者的自学体验程昌南[网名阿南]编著方强责任编辑董立娟北京航空航天大学出版社出版发行北京市海淀区学院路37号(100191)发行部电话:010-82317024传真:010-82328026http://www.buaapress,comcnE-mail:bhpress@263.net涿州市新华印刷有限公司印装各地书店经销开本:787mm×960mm1/16印张:31.5字数:706千字2008年10月第1版2008年10月第1次印刷印数:;5000册ISBN978-7-81124-422-9定价:49.50元(含光盘1张)本书的使用及学习方法ARM和 Linux学习方法的体会如何才能学好或尽快上手ARM和 Linux?这是很多初学者想问的,也曾经在网上讨论过。其实学习没有捷径,主要还是取决于学习态度和学习方法。ARM、 Linux也一样,在此阿南根据自学过程中的体会和网上的讨论作一些总结。ARM的学习。有了单片机或计算机结构的基本知识、C语言的基础,上手ARM是比较容易的。学习ARM,首先应该了解一下ARM的体系结构,了解它有哪些版本、哪些模式、哪些寄存器、异常等。这方面的内容可以参考《ARM体系结构与编程》一书,这本书介绍的内容还是很全的,可以先快速地浏览特别是汇编指令不需要记住,以后应用时再查。其次选定一种具体厂家型号的ARM处理器,学习该处理器相关的开发工具的使用,如开发环境、仿真器及评估板等。然后可以分析该处理器的外围扩展方法,如 SDRAM、 NAND Flash等,一般官方或第三方都会提供原理图,可以用来分析。接下来要理解该处理器的启动过程,亲自尝试从块裸板逐步运行自己的应用程序,也可以参考官方的启动代码及例程。最后就可以调试、测试该处理器的各种外围部件,例如定时器PWM串口、LCD等,特别是中断及执行过程。Liux的学习。尽管我们最终应用的是嵌入式 Linux,但还是要先在PC机下学习,因为无论基于PC机还是嵌入式处理器的 Linux开发、编程、调试等都是相近的,而PC机的性能、资源等都更加丰富,嵌入式 Linux的开发环境通常也都建立在PC机 Linux环境下,另外Linux大量的书籍也都是针对PC机写的。阿南觉得学习的顺序应该是先在PC机上安装Linux系统,再参考相应的入门书籍,主要是熟悉 Linux环境,学习常用的命令和操作(不一定多,基本、常用的就可以,以后在使用过程中慢慢积累),理解各 Linux下的目录结构与作用等。其次,学习在Liπux环境下编程。可以参考《GNU/ Linux编程指南》或《UNX环境高级编程》,它们介绍了文件描述符的概念,打开读写等操作的系列基础知识;没有这些基础而直接看《 Linux设备驱动程序》会觉得困难。再次,了解一下 Linux内核源代码树的目录结构、编译等。最后,学习《 Linux设备驱动程序》,理解驱动程序的结构框架等。根据实践需要也可学习网络编程和图形用户界面GUI编程,可以参考学习《UNIX网络编程》和《C++ GUI Qt3编程》。另外由于 Qt GUI是基于C++的,所以需要学习C++的知识,也可以选择其他如Microwindows、 MiniGUI等。有了PC机的 Linux基础及编程知识后,就可以直接应用于嵌入式前言了!此时需要一个硬件平台(如开发板或直接的产品等目标系统)和该平台的开发环境。一般的处理器原厂或第三方都会提供开发环境,所以不需要我们移植,它包括建立在PC宿主机上的编译等工具和嵌入式 Linux内核(包括硬件驱动等BSP)源码。此时只须学习开发环境的建立和使用以及将PC机所学的知识应用于具体的嵌入式平台。如果涉及硬件及驱动那么应三该有一定的硬件调试和解决问题的能力,此时单片机、ARM基础及外围设备接口的调试能力将起到很重要的作用。很多朋友(包括非电子、自动化专业的朋友)都希望将来从事 Linux驱入门与实践入动方面的工作,认为学习了Limx驱动方面的知识就OK了而往往忽略硬件本身的调试解决问题能力,阿南觉得这是不正确的。因为 Linux驱动与前后台控制硬件外设的区别只在于它与应用程序的接口,它要遵循一定的结构和规则,这种规则涉及的也就是通常讲的 Linux驱动知识和技术,它是固定的,是容易掌握的,只要遵循就不会出问题。而硬件及外设是千变万化的,它所涉及的技术是多方面的,除处理器本身外,还有各种接口及协议、数字、模拟技术等。这些在设计、调试时是很容易出现问题的,此时要求我们有一定的调试、测试手段和方法。所以,阿南认为要想成为一名优秀的 ARM Linux驱动工程师,首先必须是一名优秀的、具有丰富调试经验的单片机或ARM处理器应用工程师本书的使用与相关知识的同步学习曾经有一个朋友这样告诉阿南:“如果看您的笔记就能掌握 ARM Linux驱动,那就是最好的目的了”。对不起,阿南做不到,写不出这种“葵花宝典”。这本书的前身是在21CBBS上发表的《嵌入式 Linux人门笔记》,主要是阿南在自学 Linux和在项目中应用 Linux时记录的笔记、出现的错误和心得等,是自己平时工作中非常重要的参考手册。发表后得到众网友的喜爱、支持及北航出版社胡晓柏主任的鼓励,故花更多的时间、精力将笔记丰富出版。嵌人式是一门实践性很强的技术,而《嵌入式 Linux入门笔记》主要记录的是 Linux等相关的软件部分,没有包括硬件相关的部分,为了让读者能够亲自实践,故增加了ARM及硬件部分。并且亲自设计了AN2410SSB(最小系统板)和AN2410MB(扩展底板),给出了所有原理图,介绍了制作过程,记录了用裸板开始调试的步骤和过程,介绍了如何让ARM运行及启动等各方面的内容,以及前后台(无操作系统下)的应用等。本书没有将所涉及的技术及理论都包括进来,不仅篇幅有限,而且也没有必要,因为已有太多相当经典的资料。本书第1章为概述。第2章分析了硬件的原理图,读者应该阅读S3C2410A的数据手册,特别是信号引脚功能描述,内存控制部分。第3章主要介绍了关于 Protel原理图和PCB板的绘制,如果读者没有 Prote的基础可以参考人民邮电出版社的《电路设计与制版— Protel99入门与提高》或其他 Protel书。如果有 Protel基础,只是没有绘制过多层板,那么可以参考人民邮电出版社的《 Protel99E多层电路板设计与制作》。第4章介绍了S3C2410A系统核心部分的调试方法和工具的使用,以及利用工具进行测试的方法、手段。该部分是整个系统的基础,也是非常重要的,读者需要多试验,出现问题时多参考S3C2410A的数据手册。第5章专门分析了S3C2410A的启动代码,用于理解S3C2410A的启动过程,中断处理过程及存储器等前言相关部分,也是非常基础和重要的。因为启动代码由汇编组成,此时可参考清华大学出版社的《ARM体系结构与编程》,学习理解ARM的汇编语言等相关知识。第67章为硬件平台上实现ARM的外围实验和扩展实验读者仍然要参考S3C240A的数据手册,在仿真调试情况下理解ARM内部的寄存器、存储器、状态寄存器等与ARM体系相关的知识。另外还要阅读如WAv音频格式,SD卡规范及相关的数据手册等。CPLD部分读者可以参考电子工业出版社的《基于 Quartus II的FPGA/CPLD设计》,学习基本的工程创建,图形设计输入,编译和编程等。 Altera cpld更详细的资料可以去官网下载。第8章介绍了前后台系统还需要考虑的相关知识: NAND Bootloader、文件系统和图形界面。图形界面部分,读者需要理解一些基本的绘图原理和算法,可以参考机械工业出版社的《计算机图形学的算法基础》。第9章介绍了在PC机下的 Linux各方面技术,这些都是嵌入式 Linux的基础,非常重要,涉及的知识内容也很多。在该章中,阿南只是总结了一些实践操作的部分内容所以还需要读者自己去参考学习Linux的这些书籍: Linux系统的基本操作参考清毕大学出版社的《 Red hat linuⅹ9系统管入门与实践理》(这本书应该被实践安装的桌面 Linux系统相应版本的书替代),应用编程参考清华大学出版社的《GNU/Linuⅹ编程指南》或机械工业出版社的《Uniⅸx高级环境编程》,驱动编程参考中国电力出版社的《 Linux设备驱动程序》。第10章主要介绍S3C2410A的嵌入式 Linux开发环境的搭建及工具的使用。这里采用的是MIZI公司的 Linux for s3C2410平台,读者也可以直接参考《 MIZI Linux sdk for s3C2410》文档。第11章介绍在S3C2410A下实现 Linux驱动,很多原理性的知识依然要参考《 Linux设备驱动程序》一书,而且要多试验验证。读者在调试实现过程中也可以直接参考 Linux for s3C2410的内核源码中和硬件、驱动相关的代码例子(可以在 Windows系统下安装 Source insight软件,方便阅读 Linux内核源代码)。第12章介绍嵌人式 Linux桌面系统,可读写文件系统 YAFFS的实现,嵌入式Web服务器BOA、NFS及WIFI。这些都是实践性很强的应用操作,所以读者主要是应用它们,出现问题时上网查找相关应用操作,寻找解决问题的思路,再测试验证。第13章是网络编程方面的知识,主要参考清华大学出版社的《UNIX网络编程第1卷:套接口API》,目的是掌握TCP客服机/服务器的实现及网络的调试方法。第14章介绍嵌人式GUI开发环境的创建和开发方法,桌面系统的移植。学习前读者应该先学习基于Qt的应用编程,可以参考北航出版社的《C++GU1Qt3编程》,如果没有C++的基础可以参考清华大学出版社的《C++程序设计教程》。致谢感谢我的导师(也是本书的另一位作者)—方强多年来的关心与指导,且对本书付出的辛苦劳动。感谢我的公司——广州市天誉创高科技有限公司及同事们,他们对本书提供了很大帮助。段克为本书绘制了部分电路图,丁亚锋为本书编写并调试了部分程序。另外,还要感谢曾水生、李玉琪、刘卫国、张端峰、龙靖、彭雄飞、王勇、黄焕立、王菊林、黄斌、何运辉、吴建、方斌、黄伟、傅良英、胡孝发、黄志艳、张凯、欧孔德、梁家乐、宁雪玉、蔡青青及蓝萍等人的帮助。前言感谢深圳英蓓特公司提供 Realview mDK开发工具及相关资料和技术支持。感谢EDN网为本书创立书友会(hp:// group. ednchina, com/999/)和开展本书的AN2410SSB学习板助学等活动。感谢北京航空航天大学出版社嵌入式系统事业部主任胡晓柏的信任与鼓励,感谢21CBBS上网友们的支持、建议和帮助。感谢我的父母、老师、姐姐、姐夫及所有亲戚朋友们,你们的关心与爱都是阿南不断前进的动力。入门与实践阿南的技术水平、经验都还很欠缺,书中的错误和不妥之处在所难免,恳请广大读者朋友们批评指正;也欢迎登陆21CBBS的ARM论坛或《 ARM Linux人门与实践》书友会与阿南交流,共同提高。阿南2008年9月自序嵌入式自学经历和体会目的回想从2000年自学单片机开始,到后来的ARM,再到 Linux,自己经历了很多,也体会了很多,有经验也有教训,所以希望通过此次机会与读者相互交流,也让更多的爱好者在自学过程中有所借鉴。如果能得到您的共鸣,可以发送电子邮件给阿南:c422@hotmail.com。初识单片机和电子竟赛大一的暑假没有回家,留在学校里希望能向师兄学点技术,后来他向我推荐了单片机和全国大学生电子竞赛。和普通学生一样,阿南认为能参加电子竞赛是多么自豪呀!且对单片机很是好奇,于是去图书管借了些基础书来阅读,很快就被它的强大功能吸引,也产生了迅速学好、将来参加电子竞赛的念头买仿真器,下定决心学好单片机当时学校还没有开模拟、数字电子等专业基础课程,所以学习单片机还是很困难的,一般阿南都拿两三本单片机基础书一起对照着看,旁边还放着模拟、数字等基础教程以便查阅。暑假很快就过去了,期间虽然专心学习,但进展很慢,后得到师兄的指点:要想学好单片机,必须要有个仿真器实践大概1500元。这么贵?(这对农村孩子来讲,实在太贵了!另外买了之后,还不一定就能学会呢!)经过一个星期的思想斗争,终于下定决心要买。当时的想法是这样:“从小家里就穷,家人为了阿南付出了很多心血,所以阿南必须学好技术,好将来回报他们;要参加电子竞赛且取得好成绩,在技术上必须要超越同学、师兄及其他院校的同齡人,而论聪明、基础不可能占优,唯有比他们更早开始,更加勤奋和善于思考;是的,很心疼父母的这些辛苦钱,也正是这个原因更促使阿南尽最大努力,更加勤奋地学习”。培养兴趣,它是最好的老师买了仿真器后,阿南比以前任何时候都更加勤奋了:图书馆、书店找书学习,独自骑两小时自行车买器件,万能板上焊接电路,学习自己编程,用仿真器仿真,万用表测量各种信号变化等。对于单片机,阿南到了近乎疯狂的地步,调试遇到困难时的痛苦、解决问题后的畅快和兴奋,都让阿南对它产生了很深的感情,也已不再是在当初的巨大压力和包袱下学习了,而是在种很浓厚的兴趣下享受着它带来的喜怒哀乐。自序冲破难关,学会独立时间过的真快,自学单片机已经一年了,在这期间阿南对51系列单片机的原理已经理解得差不多了,也实验、测试了所有的片内外设,但只有并行通信测试还一直没有成功过,就是ADCo809的A/D转换实验。这个实验已经断断续续调了近两个月,分析了书上所有的相关内容,对原理也已经很清楚了,但仿真器就是采集不到正确的数据。当时遇到困难时没有像现在这样方便的网络,也没有示波器,只能分析书本和凭自己的想象和试验,另外总是期盼着师入门与实践兄能帮助解决。后来静下心来想了各种解决测试的方法和线索,一个个排除,最终在仿真器说明书中发现“POD52仿真头的P0、P2口只能用作IO用,POD51可以作为总线用”。由于直使用POD52的仿真头,所以读/写等信号都没有出来,换成POD51果然就成功了。(当时真的很兴奋!)之后,单片机学习就变得非常顺利,一般的系统都能独自完成,也终于可以自豪地宣告:阿南的单片机人门啦。在这一过程中阿南体会到了独自思考、解决问题的重要性,也明白了开发工具在实践过程中所起到的作用。(其实很多问题是要用示波器测试和请求工具厂商技术支持的。)上帝是公平的,机会留给有准备的人人门单片机后,不仅自己做些小课题,也用它完成课程设计、参加校里组织的竞赛等。虽然没有参加院里的工程师摇篮协会,但自己的勤奋、动手能力及对单片机的执着还是得到了老师的肯定。初识贾老师(负责组织参加全国大学生电子竞赛相关事务的老师)时,他给了一道1999年的竞赛题——工频真有效值表。该题有很多的运算,考虑到汇编语言实现的难度,所以阿南学习用C语言为单片机编程。由于大一时开过C语言的基础课,再加上良好的汇编语言基础能力,这个课题很顺利地完成了。之后,贾老师将阿南推荐给方老师,目的很明确:学好单片机,备战2003年SONY杯全国大学生电子设计竞赛。有了方老师的指导,再加上实验室的各种硬件,阿南开始了一个新的阶段:不仅学习单片机和C语言编程,还要学习单片机以外的相关技术,如 Protel绘制原理图、PCB制板;学习各种总线和协议,学习电动机控制等;还要学习PLC、MCGS组态软件以及VB。这2年半的时间里,阿南早已不仅仅是为了竞赛更多的是在体会和享受着整个学习过程。回想自己5年的大学学习生活,感觉真的很幸运,最初的王师兄,后来的贾老师和方老师、女朋友及所有帮助过阿南的朋友,在此对他们表示衷心的感谢,感谢他们总是在适当的时候出现指导和帮助阿南,让阿南为之感动,为之奋斗。同时,也深深体会一个道理:机会总是留给足够真诚,足够勤奋、执着,有所准备的人;连自己都不能感动,何以感动别人?感动上帝?坎坷的一年,技术上的追求而不断放弃工作当同学们纷纷进入大中专院校,从事让多少人羡慕的稳定的教师职业时,阿南却选择了南下打工,希望在技术上有更高的造诣。当时ARM在国内已经流行,阿南和广大爱好者一样,和当年初识单片机一样,也被它深深地吸引。辗转了几家公司后,终于可以从事单片机的应用开发。半年后,阿南作出了一个让
    2021-05-06下载
    积分:1
  • 预测控制(席裕庚)
    MPC领域经典书籍,上海交通大学席裕庚老师主编预测控制
    2021-05-06下载
    积分:1
  • 指纹识别系统包含了指纹数据库 源码
    完成了指纹的预处理 特征提取 指纹匹配 自带指纹数据库
    2020-12-01下载
    积分:1
  • 鲁棒最优控制与鲁棒h无穷控制
    鲁棒最优控制与鲁棒h无穷控制方面的经典著作,非常值得有志于此的英雄细细阅读
    2020-12-07下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载