matlab中英文翻译文献
matlab 专业英语翻译(原文)

MATLAB 的介绍什么是MA TLAB这个名字为MATLAB代表矩形组。
MATLAB代表最初是提供方便地访问矩形软件的LINPACK 和EISPACK项目。
现在,MA TLAB使用LINPACK 和EISPACK项目所开发的软件,它代表一起开发了先进的设备,使用在艺术的矩阵计算软件。
基于MATLAB已经发展了一个有许多用户很多年。
它是由MathWorks公司,如在图8 - 1.In大学环境所示,它是标准的在数学,工程和science.In行业的初级和高级课程的教学工具,MATLAB是高选择的工具生产力研究,开发和分析。
* The MathWorks公司提供的数据分析,可视化,应用开发,仿真,设计集成产品集,代码generation.MATLAB是所有MathWorks产品的基础MATLAB是一个直观的语言和技术计算环境。
随着用户超过500万个社区整个行业,政府和学术界的强大传播,MATLAB是公认的全球标准的技术运算。
MATLAB是用于各种应用领域,包括信号和图像处理,控制系统设计,地球科学和生命科学,金融和经济,仪器仪表等。
开放的架构可以很容易地使用MATLAB和配套产品,探索和创造,提供数据的早期探索和竞争advantages.Simulink定制工具是模拟和原型开发环境的建模,模拟和分析现实世界,动态系统。
Simulink环境提供了一个框图接口,在核心MATLAB的数字,图形和编程功能之上。
为什么用MA TLAB?依靠遍布全球的专业技术基于MATLAB加快他们的研究,压缩投资的分析和开发时间,降低工程成本,并产生有效的解决办法。
MATLAB环境鼓励创造性,使你能够快速测试和多种方案比较,结果。
你生产出更好的解决方案。
用户发现,MATLAB接口的直观,语言的组合,内置的数学和图形功能使MATLAB 的技术计算的首选平台比使用C,Fortran和其他语言和应用程序。
从MATLAB的数据采集处理和分析范围的工程和科学计算任务,到应用开发。
(完整版)MATLAB中英文对照

MATLAB7.1中文翻译MATLAB MATLAB 主程序模块Simulink 动态仿真模块Aerospace Blockset 航空模块集Bioinformatics Toolbox 生物信息学工具箱CDMA Reference Blockset CDMA 参考模块集Communications Blockset 通信模块集Communications Toolbox 通信工具箱Control System Toolbox 控制系统工具箱Curve Fitting Toolbox 曲线拟合工具箱DSP Blockset 数字信号模块集Data Acquisition Toolbox 数据采集工具箱Database Toolbox 数据库工具箱Datafeed Toolbox 数据反馈工具箱Distributed Computing Toolbox 分布式计算工具箱Dials and Gauges Blockset 刻度标尺模块集Embedded Target for Motorola MPC 555 摩托罗拉MPC555 嵌入对象Embedded Target for the TI C2000 DSP TI C2000 DSP嵌入对象Embedded Target for TI 6000 DSP TI 6000数字信号处理嵌入对象Embedded Target for Infineon C166 Microcontrollers Infineon C166 微控制器嵌入对象Embedded Target for Motorola? HC12 Motorola? HC12嵌入对象Embedded Target for OSEK/VDX? OSEK/VDX?嵌入对象Excel Link Excel 连接Extended Symbolic Math 扩展符号数学库Filter Design Toolbox 滤波器设计工具箱Filter Design HDL Coder 滤波器设计硬件描述语言编码器Financial Derivatives Toolbox 金融预测工具箱Financial Time Series Toolbox 金融时间系列工具箱Financial Toolbox 金融系统工具箱Fixed-Income Toolbox 定点收益工具箱Fixed-Point Blockset 定点模块集Fuzzy Logic Toolbox 模糊逻辑工具箱GARCH Toolbox GARCH 工具箱Genetic Algorithm and Direct Search Toolbox 遗传算法和直接搜寻工具箱Gauges Blockset Gauges模块集Image Processing Toolbox 图像处理工具箱Image Acquisition Toolbox 图像调节工具箱Instrument Control Toolbox 设备控制工具箱LMI Control Toolbox LMI 控制工具箱MATLAB Com Builder MATLAB COM 文件编辑器MATLAB Compiler MATLAB 编译器MATLAB Excel Builder MATLAB 外部编辑器MATLAB Link for code composer studio MATLAB 与代码设计工作室的连接MATLAB Link for ModelSim MATLAB与ModelSim的连接MATLAB Report Generator MATLAB 报告生成器MATLAB Runtime Server MATLAB 运行时间服务器MATLAB Webs Server MATLAB 支持Web 服务器MATLAB? Distributed Computing Engine MATLAB? 分布式计算引擎Mapping Toolbox 地图工具箱Model Predictive Control Toolbox 模型预测控制工具箱Model-Based Calibration Toolbox 基于模型标准工具箱Mu-Analysis and Synthesis ToolboxMU 分析与合成工具箱Neural Network Toolbox 神经网络工具箱Nonlinear Control Design Blockset 非线性控制设计模块集OPC Toolbox OPC工具箱Optimization Toolbox 优化工具箱Partial Differential Equation Toolbox 偏微分方程工具箱Real-Time Windows Target 实时视窗对象Real-Time Workshop 实时工作室Real-Time Workshop Embedded Coder 实时工作室内嵌编码器Requirements Management Interface 需求管理界面Robust Control Toolbox 强(鲁棒)控制工具箱RF Toolbox RF工具箱SB2SL(converts models to Simulink) 模型转换成Simulink工具Signal Processing Toolbox 信号处理工具箱Signal Processing Blockset 信号处理模块集Sim Driveline SIM动力传动系统Sim Mechanics SIM机械学Sim Power Systems SIM电力系统Simulink Performance ToolsSimulink 执行工具箱Simulink Report Generator Simulink 报表生成器Simulink Verification and Validation Simulink 核实与验证Simulink Response Optimization Simulink响应优化Simulink Parameter Estimation Simulink 参数估计Simulink Fixed Point Simulink不动点Simulink Control Design Simulink控制设计Simulink Accelerator Simulink加速器Spline Toolbox 样条工具箱Stateflow 状态流Stateflow Coder 状态流编码器Statistics Toolbox 统计工具箱Symbolic Math Toolbox 符号数学工具箱System Identification Toolbox 系统识别工具箱Virtual Reality Toolbox 虚拟现实工具箱Video and Image Processing Blockset 视频和图像处理模块集Wavelet Toolbox 小波分析工具箱xPC Target XPC对象xPC Target Embedded Option XPC对象内嵌属性。
MATLAB英文材料-基于matlab的仿真(含中文翻译)

1. Introduction
Navigation is the essential ability that a mobile robot. During the development of new navigation algorithms, it is necessary to test them in simulated robots and environments before the testing on real robots and the real world. This is because (i) the prices of robots are expansive; (ii) the untested algorithm may damage the robot during the experiment; (iii) difficulties on the construction and alternation of system models under noise background; (iv) the transient state is difficult to track precisely; and (v) the measurements to the external beacons are hidden during the experiment, but this information is often helpful for debugging and updating the algorithms.
This paper presents a Matlab-based simulator that is fully compatible with Matlab codes,and makes it possible for robotics researchers to debug their codeand do experiments conveniently at the first stage of their research.The algorithms development is based on Matlab subroutines with appointed parameter variables,which are stored in a file to be accessed by the ing this simulator,we can build the environment, select parameters,build subroutinesand display outputs on the screen.Data are recorded during the whole procedure;some basic analyses are also performed.
外文翻译---MATLAB 在图像边缘检测中的应用

英文资料翻译MATLAB application in image edge detection MATLAB of the 1984 countries MathWorks company to market since, after 10 years of development, has become internationally recognized the best technology application software. MATLAB is not only a kind of direct, efficient computer language, and at the same time, a scientific computing platform, it for data analysis and data visualization, algorithm and application development to provide the most core of math and advanced graphics tools. According to provide it with the more than 500 math and engineering function, engineering and technical personnel and scientific workers can integrated environment of developing or programming to complete their calculation.MATLAB software has very strong openness and adapt to sex. Keep the kernel in under the condition of invariable, MATLAB is in view of the different application subject of launch corresponding Toolbox (Toolbox), has now launched image processing Toolbox, signal processing Toolbox, wavelet Toolbox, neural network Toolbox and communication tools box, etc multiple disciplines special kit, which would place of different subjects research work.MATLAB image processing kit is by a series of support image processing function from the composition, the support of the image processing operation: geometric operation area of operation and operation; Linear filter and filter design; Transform (DCT transform); Image analysis and strengthened; Binary image manipulation, etc. Image processing tool kit function, the function can be divided into the following categories: image display; Image file input and output; Geometric operation; Pixels statistics; Image analysis and strengthened; Image filtering; Sex 2 d filter design; Image transformation; Fields and piece of operation; Binary image operation; Color mapping and color space transformation; Image types and type conversion; Kit acquiring parameters and Settings.1.Edge detection thisUse computer image processing has two purposes: produce more suitable for human observation and identification of the images; Hope can by the automatic computer image recognition and understanding.No matter what kind of purpose to, image processing the key step is to contain a variety of scenery of decomposition of image information. Decomposition of the end result is that break down into some has some kind of characteristics of the smallest components, known as the image of the yuan. Relative to the whole image of speaking, this the yuan more easily to be rapid processing.Image characteristics is to point to the image can be used as the sign of the field properties, it can be divided into the statistical features of the image and image visual, two types of levy. The statistical features of the image is to point to some people the characteristics of definition, through the transform to get, such as image histogram, moments, spectrum, etc.; Image visual characteristics is refers to person visual sense can be directly by the natural features, such as the brightness of the area, and texture or outline, etc. The two kinds of characteristics of the image into a series of meaningful goal or regional p rocess called image segmentation.The image is the basic characteristics of edge, the edge is to show its pixel grayscale around a step change order or roof of the collection of those changes pixels. It exists in target and background, goals and objectives, regional and region, the yuan and the yuan between, therefore, it is the image segmentation dependent on the most important characteristic that the texture characteristics of important information sources and shape characteristics of the foundation, and the image of the texture characteristics and the extraction of shape often dependent on image segmentation. Image edge extraction is also the basis of image matching, because it is the sign of position, the change of the original is not sensitive, and can be used for matching the feature points.The edge of the image is reflected by gray not continuity. Classic edge extraction method is investigation of each pixel image in an area of the gray change, use edge first or second order nearby directional derivative change rule,with simple method of edge detection, this method called edge detection method of local operators.The type of edge can be divided into two types: (1) step representation sexual edge, it on both sides of the pixel gray value varies significantly different; (2) the roof edges, it is located in gray value from the change of increased to reduce the turning point. For order jump sexual edge, second order directional derivative in edge is zero cross; For the roof edges, second order directional derivative in edge take extreme value.If a pixel fell in the image a certain object boundary, then its field will become a gray level with the change. The most useful to change two features is the rate of change and the gray direction, they are in the range of the gradient vector and the direction to said. Edge detection operator check every pixel grayscale rate fields and evaluation, and also include to determine the directions of the most use based on directional derivative deconvolution method for masking.Digital image processing technique has been widely applied to the biomedical field, the use of computer image processing and analysis, and complete detection and recognition of cancer cells can help doctors make a diagnosis of tumor cancers. Need to be made in the identification of cancer cells, the quantitative results, the human eye is difficult to accurately complete such work, and the use of computer image processing to complete the analysis and identification of the microscopic images have made great progress. In recent years, domestic and foreign medical images of cancer cells testing to identify the researchers put forward a lot of theory and method for the diagnosis of cancer cells has very important meaning and practical value.Cell edge detection is the cell area of the number of roundness and color, shape and chromaticity calculation and the basis of the analysis their test results directly affect the analysis and diagnosis of the disease. Classical edge detection operators such as Sobel operator, Laplacian operator, each pixel neighborhood of the image gray scale changes to detect the edge. Although these operators is simple, fast, but there are sensitive to noise, get isolated or in short sections of acontinuous edge pixels, overlapping the adjacent cell edge defects, while the optimal threshold segmentation and contour extraction method of combining edge detection, obtained by the iterative algorithm for the optimal threshold for image segmentation, contour extraction algorithm, digging inside the cell pixels, the last remaining part of the image is the edge of the cell, change the processing order of the traditional edge detection algorithm, by MATLAB programming, the experimental results that can effectively suppress the noise impact at the same time be able to objectively and correctly select the edge detection threshold, precision cell edge detection.2.Edge detection of MATLABMATLAB image processing toolkit defines the edge () function is used to test the edge of gray image.(1) BW = edge (I, "method"), returns and I size binary image BW, includingelements of 1 said is on the edge of the point, 0 means the edge points.Method for the following a string of:1) soble: the default value, with derivative Sobel edge detectionapproximate measure, to return to a maximum gradient edge;2) prewitt: with the derivative prewitt approximate edge detection, amaximum gradient to return to edge;3) Roberts: with the derivative Roberts approximate edge detection margins,return to a maximum gradient edge;4) the log: use the Laplace operation gaussian filter to I carry filtering,through the looking for 0 intersecting detection of edge;5) zerocross: use the filter to designated I filter, looking for 0 intersectingdetection of edge.(2) BW = edge (I, "method", thresh) with thresh designated sensitivitythreshold value, rather than the edge of all not thresh are ignored.(3) BW = edge (I, "method" thresh, direction, for soble and prewitt methodspecified direction, direction for string, including horizontal level said direction; Vertical said to hang straight party; Both said the two directions(the default).(4) BW = edge (I, 'log', thresh, log sigma), with sigma specified standarddeviation.(5) [BW, thresh] = edge (...), the return value of a function in fact have multiple(" BW "and" thresh "), but because the brace up with u said as a matrix, and so can be thought a return only parameters, which also shows the introduction of the concept of matrix MATLAB unity and superiority.st wordMATLAB has strong image processing function, provide a simple function calls to realize many classic image processing method. Not only is the image edge detection, in transform domain processing, image enhancement, mathematics morphological processing, and other aspects of the study, MATLAB can greatly improve the efficiency rapidly in the study of new ideas.MATLAB 在图像边缘检测中的应用MATLAB自1984年由国MathWorks公司推向市场以来,历经十几年的发展,现已成为国际公认的最优秀的科技应用软件。
matlab应用外文翻译讲课稿

Introduction to MATLABMATLAB (short for Matrix Laboratory) is a special-purpose computer program optimized to perform engineering and scientific calculations. It started life has a program designed to perform matrix mathematics, but over the years it has grown into a flexible computing system capable of solving essentially any technical problem.The MATLAB program implements the MATLAB programming language and provides an extensive library of predefined functions that make technical programming tasks easier and more efficient. This book introduces the MATLAB language and shows how to use it to solve typical technical problems.MATLAB is a huge program, with an incredibly rich variety of functions. Even the basic version of MATLAB without any toolkits is much richer than other technical programming languages. There are more than 1000 functions in the basic MATLAB product alone,and the toolkits extend this capability with many more functions in various specialties. This book makes no attempt to introduce the user to all of MALTLAB′s own tools to locate the correct function for a specific purpose from the enormous choice available.Advantages of MATLABMATLAB has many advantages compared with conventional computer languages for technical problem solving. Among them are the following: 1.Ease of UseMATLAB is an interpreted language, like many versions of Basic. Like Basic, it is very easy to use. The program can be used as a scratch pad to evaluate expressions typed at the command line, or it can be used to execute large prewritten programs. Programs may be easily written and modified with the built-in integrated development environment, and debugged with the MATLAB debugger. Because thelanguage is so easy to use, it is ideal for educational use, and for the rapid prototyping of new programs.Many program development tools are provided to make the program easy to use. a workspace browser, and extensive demos.2.Platform independenceMATLAB is supported on many different computer systems, providinga large measure of platform independence. At the time of this writing,the language is supported on windows 9x/NT/2000 and many different versions of UNIX. Programs written on any platform will run on all of the other platforms, and data files written on any platform may be read transparently on any other platforms, AS a result,Programs written in MATLAB can migrate to new platforms when the needs of the user change.3.Predefined FunctionsMATLAB comes complete with an extensive library of predefined functions that provide tested and prepackaged solutions to many basic technical tasks. For example, suppose that you are writing a program that must calculate the statistics associated with an input data set.In most languages, you would need to write your own subroutines or functions to implement calculations such as the arithmetic mean, standard deviation, median, and so forth. These and hundreds of other functions are built right into the MATLAB language, making your job much easier.In addition to the large library of functions built into the basic MATLAB language, many special-purpose toolboxes are available to help solve complex problems in specific areas. For example, a user can buy standard toolboxes to solve problems in Signal Processing, Control Systems, Communications, Image Processing, and Neural Networks, among many others. There is also an extensive collection of freeuser-contributed MATLAB programs that are shared through the MATLAB Web site.4.Device-Independent PlottingUnlike most other computer languages, MATLAB has many integral plotting and imaging commands. The plots and images can be displayed on any graphical output device supported by the computer on which MATLAB is running. This capability makes MATLAB an outstanding tool for visualizing technical data.5.Graphical User InterfaceMATLAB includes tools that allow a programmer to interactively construct a graphical user interface (GUI) for his or her program. With this capability, the programmer can design sophisticated data analysis programs that can be operated by relatively inexperienced users. 6.MATLAB CompilerMATLAB′s flexibility and platform independence is achieved by compiling MATLAB programs into a device-independence p-code, and then interpreting the p-code instructions at run time. This approach is similar to that used by Microsoft is Visual Basic language.Unfortunately, the resulting programs can sometimes execute slowly because the MATLAB code is interpreted rather than compiled. We will point out features that tend to slow program execution when we encounter them.A separate MATLAB compiler is available. This compiler can compilea MATLAB program into a true executable that runs faster than theinterpreted code. It is a great way to convert a prototype MATLAB program into an executable suitable for sale and distribution to users. Disadvantages of MATLABMATLAB has two principal disadvantages. The first is that it is an interpreted language, and therefore can execute more slowly than compiled languages. This problem can be mitigated by properly structuring theMATLAB program and by the use of the MATLAB compiler to compile the final MATLAB program before distribution and general use.The second disadvantage is cost: A full copy of MATLAB is 5 to 10 times more expensive than a conventional C or Fortran compiler. This relatively high cost is more than offset by the reduced time required for an engineer or scientist to create a working program, so MATLAB is cost-effective for businesses. However, it is too expensive for most individuals to consider purchasing. Fortunately, there is also an inexpensive Student Edition of MATLAB, which is a great tool for students wanting to learn the language. The Student Edition of MATLAB is essentially identical to the full edition.With the introduction of branches and loops, our programs are going to become more complex, and it will get easier to make mistakes. To help avoid programming errors, we will introduce a formal program design procedure based on the technique known as top-down design. We will also introduce a common algorithm development tool known as pseudo code.Introduction To Top-Down Design TechniquesSuppose that you are an engineer working in industry, and that you need to write a program to solve some problem. How do you begin?When given anew problem, there is a natural tendency to sit down at a keyboard and start programming without “wasting” a lot of time thinking about the problem first. It is often possible to get away with this “on the fly” approach to programming for very small problems, such as many of the examples in this book. In the real world, however, problems are larger, and a programmer attempting this approach will become hopelessly bogged down. For larger problems, it pays to completely think out the problem and the approach you are going to take to it before writing a single line of code.We introduce a formal program design process in this section, and thenapply that process to every major application developed in the remainder of the book. For some of the simple examples that we will be doing, the design process will seem like overkill; however, as the problems that we solve get larger and larger, the process becomes more and more essential to successful programming.When I was an undergraduate, one of my professors was fond of saying, “programming is easy. It is knowing what to program that is hard.” his point was forcefully driven home to me after I left university and began working in industry on larger scale software projects. I found that the most difficult port of my job was to understand the problem I was trying to solve. Once I really understood the problem, it became easy to break the problem apart into smaller, more easily manageable pieces with well-defined functions, and then to tackle those pieces one at a time. Top-down design is the process of starting with a large task and breaking it down into smaller, more easily understandable pieces, which perform a portion of the desired task. Each subtask may in turn be subdivided into smaller subtasks if necessary. Once the program is divided into small pieces, each piece can be coded and tested independently. We do not attempt to combine the subtasks into a complete task until each of the subtasks has been verified to work properly by itself.The concept of top-down design is the basis of our formal program design process. We will now introduce the details of the process, which is illustrated in figure 1 the steps involved are:1.Clearly state the problem that you are trying to solve. Programs are usually written to fill some perceived need, but that need may not be articulated clearly by the person requesting the program. For example, a user may ask for a program to solve a system of simultaneous linear equations. This request is not clear enough to allow a programmer to design a program to meet the need; he or she must first know much moreabout the problem to be solved. Is the system of equations to be solved real or complex? What is the maximum number of equations and unknown that the program must handle? Are there any symmetry in the equations that might be exploited to make the task easier? The program designer will have to talk with the user requesting the program, and the two of them will have come up with a clear statement of exactly what they are trying to accomplish. A clear statement of the problem will prevent misunderstandings, and it will also help the program designer to properly organize his or her thoughts. In the example we were describing, a proper statement of the problem might have been:Figure 1Design and write a program to solve a system of simultaneous linearequations having real coefficients and with up to 20 equations in 20 unknowns.2.Define the inputs required by the program and the outputs to be producedby the program.The inputs to the program and the outputs produced by the program must be specified so that the new program will properly fit into the overall processing scheme. In this example, the coefficients of the equations to be solved are probably in some pre-existing order, and our new program needs to be able to read them in that order. And our new program needs to be able to read them in that order. Similarly, it needs to produce the answers required by the programs that may follow it in the overall processing scheme, and to write out those answers in the format needed by the programs following it.3.Design the algorithm that you intend to implement in the program. An algorithm is a step-by-step procedure for finding the solution to a problem. It is at this stage in the process that top-down design techniques come into play. The designer looks for logical divisions within the problem, and divides it up into subtasks along those lines. This process is called decomposition. If the subtasks are large, the designer can break them up into even smaller sub-tasks. This process continues until the problem has been divided into many small pieces, each of which does a simple, clearly understandable job.After the problem has been decomposed into small pieces, each piece is further refined through a process called stepwise refinement. In stepwise refinement, a designer starts with a general description of what the piece of code should do, and then defines the functions of the piece in greater and greater detail until they are specific enough to be turned into MATLAB statements. Stepwise refinement is usually done with pseudo code, which will be described in the next section.It is often helpful to solve a simple example of the problem by hand during the algorithm development process. If the designer understands the steps that he or she went through in solving the problem by hand, then he or she will be better able to apply decomposition and stepwise refinement to the problem.4.Turn the algorithm into MATLAB statements.If the decomposition and refinement process was carried out properly, this step will be very simple. All the programmer will have to do is to replace pseudo code with the corresponding MATLAB statements on a one-for-one basis.5.Test the resulting MATLAB programThis step is the real killer. The components of the program must first be tested individually, if possible, and then the program as a whole must be tested. When testing a program, we must verify that it works correctly for all legal input data sets. It is very common for a program to be written, tested with some standard data set, and released for use, only to find that it produces the wrong answers (or crashes) with a different input data set. If the algorithm implemented in a program includes different branches, we must test all of the possible branches to confirm that the program operates correctly under every possible circumstance.Large programs typically go through a series of tests before they are released for general use (see Figure 2). The first stage of testing is sometimes called unit testing. During unit testing, the individual subtasks of the program are tested separately to confirm that they work correctly. After the unit testing is completed, the program goes through a series of builds, during which the individual subtasks are combined to produce the final program. The first build of the program typically includes only a few of the subtasks. It is used to check the interactions among those subtasks and the functions performed by the combinations ofthe subtasks. In successive builds, more and more subtasks are added, until the entire program is complete. Testing is performed on each build, and any errors(bugs) detected are corrected before moving on to the next build.Figure 2MATLAB 介绍MATLAB (矩阵实验室的简称)是一种专业的计算机程序,用于工程科学的矩阵数学运算。
matlab图像处理外文翻译外文文献

matlab图像处理外文翻译外文文献附录A 英文原文Scene recognition for mine rescue robotlocalization based on visionCUI Yi-an(崔益安), CAI Zi-xing(蔡自兴), WANG Lu(王璐)Abstract:A new scene recognition system was presented based on fuzzy logic and hidden Markov model(HMM) that can be applied in mine rescue robot localization during emergencies. The system uses monocular camera to acquire omni-directional images of the mine environment where the robot locates. By adopting center-surround difference method, the salient local image regions are extracted from the images as natural landmarks. These landmarks are organized by using HMM to represent the scene where the robot is, and fuzzy logic strategy is used to match the scene and landmark. By this way, the localization problem, which is the scene recognition problem in the system, can be converted into the evaluation problem of HMM. The contributions of these skills make the system have the ability to deal with changes in scale, 2D rotation and viewpoint. The results of experiments also prove that the system has higher ratio of recognition and localization in both static and dynamic mine environments.Key words: robot location; scene recognition; salient image; matching strategy; fuzzy logic; hidden Markov model1 IntroductionSearch and rescue in disaster area in the domain of robot is a burgeoning and challenging subject[1]. Mine rescue robot was developed to enter mines during emergencies to locate possible escape routes for those trapped inside and determine whether it is safe for human to enter or not. Localization is a fundamental problem in this field. Localization methods based on camera can be mainly classified into geometric, topological or hybrid ones[2]. With its feasibility and effectiveness, scene recognition becomes one of the important technologies of topological localization.Currently most scene recognition methods are based on global image features and have two distinct stages: training offline and matching online.。
matlab应用外文翻译

Introduction to MATLABMATLAB (short for Matrix Laboratory) is a special-purpose computer program optimized to perform engineering and scientific calculations. It started life has a program designed to perform matrix mathematics, but over the years it has grown into a flexible computing system capable of solving essentially any technical problem.The MATLAB program implements the MATLAB programming language and provides an extensive library of predefined functions that make technical programming tasks easier and more efficient. This book introduces the MATLAB language and shows how to use it to solve typical technical problems.MATLAB is a huge program, with an incredibly rich variety of functions. Even the basic version of MATLAB without any toolkits is much richer than other technical programming languages. There are more than 1000 functions in the basic MATLAB product alone,and the toolkits extend this capability with many more functions in various specialties. This book makes no attempt to introduce the user to all of MALTLAB′s own tools to locate the correct function for a specific purpose from the enormous choice available.Advantages of MATLABMATLAB has many advantages compared with conventional computer languages for technical problem solving. Among them are the following: 1.Ease of UseMATLAB is an interpreted language, like many versions of Basic. Like Basic, it is very easy to use. The program can be used as a scratch pad to evaluate expressions typed at the command line, or it can be used to execute large prewritten programs. Programs may be easily written and modified with the built-in integrated development environment, and debugged with the MATLAB debugger. Because thelanguage is so easy to use, it is ideal for educational use, and for the rapid prototyping of new programs.Many program development tools are provided to make the program easy to use. a workspace browser, and extensive demos.2.Platform independenceMATLAB is supported on many different computer systems, providinga large measure of platform independence. At the time of this writing,the language is supported on windows 9x/NT/2000 and many different versions of UNIX. Programs written on any platform will run on all of the other platforms, and data files written on any platform may be read transparently on any other platforms, AS a result,Programs written in MATLAB can migrate to new platforms when the needs of the user change.3.Predefined FunctionsMATLAB comes complete with an extensive library of predefined functions that provide tested and prepackaged solutions to many basic technical tasks. For example, suppose that you are writing a program that must calculate the statistics associated with an input data set.In most languages, you would need to write your own subroutines or functions to implement calculations such as the arithmetic mean, standard deviation, median, and so forth. These and hundreds of other functions are built right into the MATLAB language, making your job much easier.In addition to the large library of functions built into the basic MATLAB language, many special-purpose toolboxes are available to help solve complex problems in specific areas. For example, a user can buy standard toolboxes to solve problems in Signal Processing, Control Systems, Communications, Image Processing, and Neural Networks, among many others. There is also an extensive collection of freeuser-contributed MATLAB programs that are shared through the MATLAB Web site.4.Device-Independent PlottingUnlike most other computer languages, MATLAB has many integral plotting and imaging commands. The plots and images can be displayed on any graphical output device supported by the computer on which MATLAB is running. This capability makes MATLAB an outstanding tool for visualizing technical data.5.Graphical User InterfaceMATLAB includes tools that allow a programmer to interactively construct a graphical user interface (GUI) for his or her program. With this capability, the programmer can design sophisticated data analysis programs that can be operated by relatively inexperienced users. 6.MATLAB CompilerMATLAB′s flexibility and platform independence is achieved by compiling MATLAB programs into a device-independence p-code, and then interpreting the p-code instructions at run time. This approach is similar to that used by Microsoft is Visual Basic language.Unfortunately, the resulting programs can sometimes execute slowly because the MATLAB code is interpreted rather than compiled. We will point out features that tend to slow program execution when we encounter them.A separate MATLAB compiler is available. This compiler can compilea MATLAB program into a true executable that runs faster than theinterpreted code. It is a great way to convert a prototype MATLAB program into an executable suitable for sale and distribution to users. Disadvantages of MATLABMATLAB has two principal disadvantages. The first is that it is an interpreted language, and therefore can execute more slowly than compiled languages. This problem can be mitigated by properly structuring theMATLAB program and by the use of the MATLAB compiler to compile the final MATLAB program before distribution and general use.The second disadvantage is cost: A full copy of MATLAB is 5 to 10 times more expensive than a conventional C or Fortran compiler. This relatively high cost is more than offset by the reduced time required for an engineer or scientist to create a working program, so MATLAB is cost-effective for businesses. However, it is too expensive for most individuals to consider purchasing. Fortunately, there is also an inexpensive Student Edition of MATLAB, which is a great tool for students wanting to learn the language. The Student Edition of MATLAB is essentially identical to the full edition.With the introduction of branches and loops, our programs are going to become more complex, and it will get easier to make mistakes. To help avoid programming errors, we will introduce a formal program design procedure based on the technique known as top-down design. We will also introduce a common algorithm development tool known as pseudo code.Introduction To Top-Down Design TechniquesSuppose that you are an engineer working in industry, and that you need to write a program to solve some problem. How do you begin?When given anew problem, there is a natural tendency to sit down at a keyboard and start programming without “wasting” a lot of time thinking about the problem first. It is often possible to get away with this “on the fly” approach to programming for very small problems, such as many of the examples in this book. In the real world, however, problems are larger, and a programmer attempting this approach will become hopelessly bogged down. For larger problems, it pays to completely think out the problem and the approach you are going to take to it before writing a single line of code.We introduce a formal program design process in this section, and thenapply that process to every major application developed in the remainder of the book. For some of the simple examples that we will be doing, the design process will seem like overkill; however, as the problems that we solve get larger and larger, the process becomes more and more essential to successful programming.When I was an undergraduate, one of my professors was fond of saying, “programming is easy. It is knowing what to program that is hard.” his point was forcefully driven home to me after I left university and began working in industry on larger scale software projects. I found that the most difficult port of my job was to understand the problem I was trying to solve. Once I really understood the problem, it became easy to break the problem apart into smaller, more easily manageable pieces with well-defined functions, and then to tackle those pieces one at a time. Top-down design is the process of starting with a large task and breaking it down into smaller, more easily understandable pieces, which perform a portion of the desired task. Each subtask may in turn be subdivided into smaller subtasks if necessary. Once the program is divided into small pieces, each piece can be coded and tested independently. We do not attempt to combine the subtasks into a complete task until each of the subtasks has been verified to work properly by itself.The concept of top-down design is the basis of our formal program design process. We will now introduce the details of the process, which is illustrated in figure 1 the steps involved are:1.Clearly state the problem that you are trying to solve. Programs are usually written to fill some perceived need, but that need may not be articulated clearly by the person requesting the program. For example, a user may ask for a program to solve a system of simultaneous linear equations. This request is not clear enough to allow a programmer to design a program to meet the need; he or she must first know much moreabout the problem to be solved. Is the system of equations to be solved real or complex? What is the maximum number of equations and unknown that the program must handle? Are there any symmetry in the equations that might be exploited to make the task easier? The program designer will have to talk with the user requesting the program, and the two of them will have come up with a clear statement of exactly what they are trying to accomplish. A clear statement of the problem will prevent misunderstandings, and it will also help the program designer to properly organize his or her thoughts. In the example we were describing, a proper statement of the problem might have been:Figure 1Design and write a program to solve a system of simultaneous linearequations having real coefficients and with up to 20 equations in 20 unknowns.2.Define the inputs required by the program and the outputs to be producedby the program.The inputs to the program and the outputs produced by the program must be specified so that the new program will properly fit into the overall processing scheme. In this example, the coefficients of the equations to be solved are probably in some pre-existing order, and our new program needs to be able to read them in that order. And our new program needs to be able to read them in that order. Similarly, it needs to produce the answers required by the programs that may follow it in the overall processing scheme, and to write out those answers in the format needed by the programs following it.3.Design the algorithm that you intend to implement in the program. An algorithm is a step-by-step procedure for finding the solution to a problem. It is at this stage in the process that top-down design techniques come into play. The designer looks for logical divisions within the problem, and divides it up into subtasks along those lines. This process is called decomposition. If the subtasks are large, the designer can break them up into even smaller sub-tasks. This process continues until the problem has been divided into many small pieces, each of which does a simple, clearly understandable job.After the problem has been decomposed into small pieces, each piece is further refined through a process called stepwise refinement. In stepwise refinement, a designer starts with a general description of what the piece of code should do, and then defines the functions of the piece in greater and greater detail until they are specific enough to be turned into MATLAB statements. Stepwise refinement is usually done with pseudo code, which will be described in the next section.It is often helpful to solve a simple example of the problem by hand during the algorithm development process. If the designer understands the steps that he or she went through in solving the problem by hand, then he or she will be better able to apply decomposition and stepwise refinement to the problem.4.Turn the algorithm into MATLAB statements.If the decomposition and refinement process was carried out properly, this step will be very simple. All the programmer will have to do is to replace pseudo code with the corresponding MATLAB statements on a one-for-one basis.5.Test the resulting MATLAB programThis step is the real killer. The components of the program must first be tested individually, if possible, and then the program as a whole must be tested. When testing a program, we must verify that it works correctly for all legal input data sets. It is very common for a program to be written, tested with some standard data set, and released for use, only to find that it produces the wrong answers (or crashes) with a different input data set. If the algorithm implemented in a program includes different branches, we must test all of the possible branches to confirm that the program operates correctly under every possible circumstance.Large programs typically go through a series of tests before they are released for general use (see Figure 2). The first stage of testing is sometimes called unit testing. During unit testing, the individual subtasks of the program are tested separately to confirm that they work correctly. After the unit testing is completed, the program goes through a series of builds, during which the individual subtasks are combined to produce the final program. The first build of the program typically includes only a few of the subtasks. It is used to check the interactions among those subtasks and the functions performed by the combinations ofthe subtasks. In successive builds, more and more subtasks are added, until the entire program is complete. Testing is performed on each build, and any errors(bugs) detected are corrected before moving on to the next build.Figure 2MATLAB 介绍MATLAB (矩阵实验室的简称)是一种专业的计算机程序,用于工程科学的矩阵数学运算。
国外MATLAB文献已翻译

河北工业大学毕业设计(论文)外文资料翻译学院:系(专业):姓名:学号:外文出处:Pattern Recognition附件:1.外文资料翻译译文;2.外文原文。
ﻬ附件1:外文资料翻译译文基于没有交集的主成分模型下的模式识别方法化学计量学研究组,化学研究所,umea大学摘要:通过独立的主成分建模方法对单独种类进行模式识别,这一方法我们已经进行了深刻的研究,主成分的模型说明了单一种类之内拟合所有的连续变量。
所以,假如数据充足的话,主成分模型的方法可以对指定的一组样品中存在的任何模式进行识别,另外,将每一种类中样品通过独立的主成分模型作出拟合,用这种简单的方式,可以提供有关这些变量作为单一变量的相关性。
这些试样中存在着“离群”,而且不同种类间也有“距离”。
我们应用经典的Fisher鸢尾花数据作为例证。
1介绍对于挖掘和使用经验数据的规律性,已经在像化学和生物这样的学科中成为了首要考虑的因素。
在化学上一个经典的例子就是元素周期表。
当元素按渐增的原子质量排列时,化学元素特性上的规律以每8个为一个周期的出现。
相似的,生物学家也常按照植物和动物形态学上的规律才将其归类。
比如,植物的花朵和叶片的形状,动物两臂的长度和宽度以及动物不同的骨骼等等。
数据分析方法(通常叫做模式识别方法),特别的创制用以探知多维数据的规律性。
这种方法已在科学的各分支上得到了广泛的应用。
模式识别中的经典问题可系统的陈述如下:指定一些种类,每一类都被定义为一套样本,训练集和检验集,还有基于每组样本的M测度值,那么是否有可能基于原M值对新的样本作出分类呢?我们提出解决这类或相关问题的许多方法,这些方法也由Kanal和另外一些人回顾过了。
在科学的分支中,比如化学和生物中,数据分析的范围往往比仅获得一组未分类数据广泛,通常上,数据分析的目的之一仍然可说是分类,但有时我们不能确定一个样本是否属于一未知的或未辨明的类别,我们希望不仅去辨别已知种类,还有未知种类。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
附录英文原文Scene recognition for minerescue robotlocalization based on visionAbstract:Anewscenerecognition system waspresented base donfuzzy logicand hidden Markov model(HMM) that canb eapplied in minerescue robot localization during emergenc ies. Thesystem uses monocular camera to acquire omni-directional images ofthe mine environment where the robot locates. By adoptingcenter-surround differencemethod, the salient localimage regions are extracted from the images as natural landmarks.These landmarks are organized by using HMM to representthe scene where the robot is,and fuzzylogicstrategyis used to match the scene andlandmark.By this way, the localizationproblem,which is the scenerecognition problem in t hesystem,can be converted into the evaluationproblemof HMM. The contributionsofthese skills make the system havetheabilitytodeal with changes inscale, 2D rotation and viewpoint. The results ofexperimentsalsoprove that the system hashigher ratio of recognition and localizationin bothstaticanddynamicmine environments.Keywords: robotlocation;scene recognition;salientimage; matching strategy;fuzzy logic; hidden Markov model1 IntroductionSearch and rescuein disasterarea inthe domain ofrobot i s a burgeoning and challenging subject[1]. Minerescue robotwas developed toenter minesduring emergencies to locate possibleescape routes for those trapped inside and determine whetheritissafefor humanto enterornot. Localization is a fundamental problem in this field.Localization methodsbased on camera canbe mainly classified intogeometr ic, topological or hybrid ones[2].With its feasibility andeffectiv eness, scene recognition becomes oneof the important technologies of topological localization.Currentlymost scene recognition methods are basedongloba limage features andhave twodistinct stages:trainingoff line and matchingonline.During the training stage,robotcollectstheimages of theenvironmentwhere itworks and processes the images to extrac tglobalfeaturesthat represent the scene. Someapproacheswere used to analyze thedata-set of image directly and some primary features were found, suchas the PCA method [3]. However,thePCA methodisnot effective in distin guishing the classes of features.Anothertypeofapproach usesappearancefeatures including color, texture andedge density torepresent the image.For example, ZHOUe tal[4]used multidimensional histograms to describeglobal appearance features. This method issimple butsensitiveto scaleand illumination changes.Infact, allkindsofglobal image features are sufferedfrom the change of environment.LOWE [5] presenteda SIFTmethodthat uses similarity invariant descriptors formed by characteristic scaleandorientationat interest pointsto obtain thefeatures.The featuresare invarianttoimagescaling, translation,rotationandpartially invariant toillumination changes.But SIFTmay generate 1000 or more interest points, which may slowdown the processordramatically.During thematching stage, nearest neighborstrategy(NN)is widely adopted for its facility and intelligibility[6]. But it cannotcapture the contribution ofindividualfeature for scenerecognition.Inexperiments, theNN is not good enough to expressthe similarity between twopatterns. Furthermo re,the selectedfeaturescan not represent the scene thoroughlyac cording tothe state-of-art patternrecognition, whichmakes recognitionnot reliable[7].So inthis work a new recognition system is presented,wh ich is more reliable and effective if itisused in a complexmin eenvironment. In this system,weimprove the invariance by extractingsalient local image regions as landmarksto replace thewhole image to deal withlarge changes inscale,2D rotatio nand viewpoint. And the number of interestpoints is reducedeffectively,which makes the processing easier.Fuzzy recognition strategy is designed to recognizethe landmarks inplaceof NN, which can strengthen the contribution of individual feature for scene recognition.Because of itspartial information resuming ability, hidden Markov model is adopted to organizethose landmarks, which can capture the structure orrelationship among them.Soscene recognitioncanbetransformed to theevaluation problem of HMM,whichmakes recognition robust.2 Salientlocal imageregions detectionResearchesonbiological vision system indicate that organism(likedrosophila) often pays attentionto certain speci alregions in the scenefortheirbehavioral relevance or local i mage cues whileobservingsurroundings [8]. These regions can be takenas natural landmarks to effectivelyrepresentand distinguish differentenvironments.Inspiredby those,we use center-surrounddifference method to detectsalient regions in multi-scale image spaces.The opponenciesof color and texture a re computedtocreatethe saliency map.Follow-up,sub-imagecenteredat the salient position in S is taken asthe landmark region. The sizeof the landmark regio ncan be decided adaptivelyaccording to thechanges of gradient orientation ofthe local image[11].Mobile robotnavigation requires thatnatural landmarks should be detected stably whenenvironments change to someextent. To validate therepeatability on landmark detection ofourapproach,we have done some experiments onthe cases ofscale, 2D rotation and viewpointchanges etc. Fig.1 shows thatthedooris detected for its saliency when viewpoint changes. More detailedanalysisand results aboutscale and rotation canbe found inour previousworks[12].3 Scenerecognitionand localizationDifferentfrom other scenerecognitionsystems, our system doesn’t need training offline.In otherwords,our scenes are not classifiedinadvance.Whenrobotwanders, scenes ca pturedatintervals of fixed timeare used to build the vertexof atopological map,which represents the place where robot locates. Although the map’sgeometriclayout isignoredbythe localization system, itis useful for visualization anddeb ugging[13]and beneficialtopath planning.So localization m eanssearchingthe best match of currentscene onthemap.In thispaper hiddenMarkov model is usedto organize the extracted landmarks from current scene andcreate thevertex o ftopologicalmap forits partial informationresuming abi lity.Resembled by panoramic vision system, robot looks aroundto get omni-images. FromFig.1 Experimenton viewpoint changeseach image, salient local regions are detectedand formed to be a sequence, named aslandmark sequencewhose order is the sameas theimage sequence. Then a hidden Markov modelis creat ed basedon the landmark sequence involvingk salient local image regions,whichis taken as the description of theplacewhere the robot locates. In oursystemEVI-D70 camerahas a view field of ±170°.Considering the overlap effect,we sampleenvironment every 45° to get8images.Let the 8images as hiddenstateSi(1≤i≤8),the created HMMcan be illustrated by Fig.2.The parameters of HMM,aij andbjk, areachieved by learning, using Baulm-Welch algorith m[14].The threshold of convergence is set as 0.001.Asfor the edge of topological map,we assign it withdistanceinformationbetween two vertices. The distances can be co mputed according toodometry readings.Fig.2 HMM of environmentTo locate itself on thetopological map,robotmust ru nits‘eye’ onenvironment andextract a landmark sequence L1′ −Lk′ , thensearch the map for the bestmatched vertex(scene). Different from traditional probabilistic localization[15], in oursystem localizationproblem canbeconverted tothe evaluationproblemof HMM. The vertex withthe g reatest evaluation value, which mustalsobe greaterthan a threshold,is taken as the best matchedvertex,whichindicates the most possible placewhere therobot is.4 Match strategy based on fuzzylogicOne ofthe key issues in image matchproblemistochoosethe most effectivefeatures ordescriptors to represent theoriginal image. Due torobot movement,those extracted landmarkregions will changeatpixel level. So, the descriptors orfeatureschosen should be invariantto some extent according tothe changes of scale,rotationand viewpointetc. In thispaper, weuse 4 features commonly adopted in thecommunity tha tare brieflydescribed as follows.GO:Gradient orientation.It hasbeenproved thatilluminati onand rotation changes are likelyto have less influence onit [5].ASMand ENT:Angular secondmomentand entropy,whichare twotexture descriptors.H: Hue,which is used to describe the fundamental information of the image.Anotherkey issue in match problem isto choose a good match str ategy or algorithm.Usually nearest neighbor strategy (NN) isus ed to measurethe similarity between twopatterns. But we havefound in theexperiments that NN can’t adequately exhibit theindividual descriptor orfeature’s contributionto similarity measurement.Asindicatedin Fig.4, theinput image Fig.4(a) comes fromdifferent viewof Fig.4(b). But the distancebetw een Figs.4(a)and(b)computed by Jeffereydivergence is larger than Fig.4(c).To solve the problem,we design a new matchalgorithmbased on fuzzy logic forexhibiting the subtlechangesof eachfe atures. The algorithmis described asbelow.And the landmark in thedatabase whosefusedsimilarit ydegree ishigherthanany others is taken as the best matc h.The matchresultsof Figs.2(b)and(c) are demonstra ted by Fig.3.As indicated,this method canmeasure the similar ity effectivelybetweentwo patterns.Fig.3Similarity computedusingfuzzy strategy5Experiments and analysisThelocalization system has been implemented onamobile robot, which is builtby ourlaboratory.Thevision system is composedof aCCD cameraandaframe-grabberIVC-4200. The resolutionofimage isset to be400×320and thesample frequency issetto be 10 frames/s. Thecomputers ystem is composed of1GHz processor and512M memory,which i scarriedbytherobot. Presently the robot works in indoor environments.Because HMM is adopted to represent and recognize the scene, our system has the abilityto capture the discriminationabout distribution of salient local imageregions and distinguish similarscenes effectively. Table 1shows therecognition result of static environments including 5laneways and a silo. 10 scenes are selected fromeach environment and HMMs arecre ated for each scene.Then20 scenes arecollectedwhen the robot enters eachenvironmentsubsequently tomatch the 60HMMs above.In the table, “truth” means that the scene to be localized matches withthe right scene (the evaluationvalueofHMM is 30% greater thanthe second high evaluation). “Uncertainty” meansthat theevaluation valueof HMMisgreaterthanthesecondhigh evaluation under 10%.“Error match” meansthatthe scene to belocalized matches withthe wrong scene. In the table, the ratio of error match is 0. But it is possible that the sceneto be localized can’t match any scenesandnewvertexes are created. Furthermore, the“ratio of truth” aboutsilo is lower bec ausesalient cues arefewer in this kind of environment.Inthe periodof automaticexploring, similar scenes can be combined. The processcanbe summarized as: when localization succeeds, thecurrent landmarksequenceis added to theaccompanying observation sequenceof the matched vertexun-repeatedly according to theirorientation (including the angle oftheimagefrom whichthe salientlocal region and the headi ng of the robotcome).The parameters ofHMMarelearned again.Compared with theapproaches using appearancefeatures of the wholeimage(Method2, M2),oursystem (M1)uses local salient regionsto localizeandmap, whichmakes it have more tolerance of scale,viewpoint changes caused by robot’sm ovement andhigher ratioofrecognition andfewer amount of verticeson thetopological map. So, oursystemhasbetter performanceindynamicenvironment.These can be seen in Table 2. Laneways 1, 2, 4, 5 are in operationwhere some miners are working, which puzzle therobot.6Conclusions1) Salient localimagefeatures are extracted to replace the wholeimageto participatein recognition, whichimprovethetolerance of changesin scale,2Drotation and viewpoint of environmentimage.2) Fuzzy logic isusedtorecognize the local image, and emphasize theindividual feature’s contributiontorecognition, whichimprovesthe reliabilityof landmarks.3)HMMis usedto capturethe structure or relationship of those localimages,which converts the scene recognition problem into theevaluation problem of HMM.4)The results from the above experimentsdemonstratet hatthe minerescue robotscene recognition system has higher ratio of recognition and localization.Future work will befocused on using HMM todeal withtheuncertainty of localization.中文翻译基于视觉的矿井救援机器人场景识别摘要:基于模糊逻辑和隐马尔可夫模型(HMM),论文提出了一个新的场景识别系统,可应用于紧急情况下矿山救援机器人的定位。