多彩编程 多彩编程MZPH · CODE BLOG
ARTICLE DETAIL

文章详情

深耕前端与后端开发技术的一线实战笔记与踩坑复盘。

【身份证识别】基于matlab GUI身份证号码识别【含Matlab源码 014期】

【身份证识别】基于matlab GUI身份证号码识别【含Matlab源码 014期】 欢迎来到海神之光博客之家✅博主简介热爱科研的Matlab仿真开发者修心和技术同步精进个人主页海神之光代码获取方式海神之光Matlab王者学习之路—代码获取方式⛳️座右铭行百里者半于九十。更多Matlab图像处理仿真内容点击①Matlab图像处理进阶版②付费专栏Matlab图像处理初级版⛳️关注CSDN海神之光更多资源等你来⛄一、身份证号码识别简介1 引言作为居民身份的象征身份证是居民身份的唯一标识它已成为生活中必不可少的证件。在火车站、酒吧等公共场所流动人口大人员复杂警察需要对公民的身份证进行核对排除可疑人员。为了提高警察的办事效率提出通过手机终端将居民的身份证号码进行自动识别。身份证号码的自动识别技术属于图像数字识别领域目前国内外采用得较多的方法主要有两类基于模板匹配的 OCR 算法和基于人工神经网络的OCR算法其中尤以模板匹配法应用最为广泛。模板匹配法主要是通过提取目标的特征包括灰度特征、形状特征、网格特征等与模板库中的模板进行匹配计算它们的相似度或者欧式距离当满足一定的阈值时就认为目标与该模板一致。模板匹配法通常用于目标特征容易提取且模板库比较小的情形但模板匹配法容易受噪声干扰而降低识别的准确度在提取的特征个数较多时匹配所需时间也会延长。2 基本原理身份证号码识别技术的基本原理如图 1 所示。首先需要扫描样本图像以获得样本字符的特征以放入特征库中因为第二代居民身份证号码的字体比较特殊需要从样本图像中获取数字 0~9及字母 x的特征作为特征库其次扫描待识别图像提取待识别字符的特征与特征库中的字符特征进行匹配从而得到识别结果。图像处理中常用到的方法有图像灰度化、二值化、基于投影的字符分割等算法。常常提取的字符特征包括直接将字符图像作为字符特征或将变换后的图像作为特征将图像在水平及垂直方向上的投影作为特征还有字符的笔画密度特征、外围特征、统计特征等在字符识别这一步中常见的方法有结构模式识别、统计模式识别、统计识别与结构识别的结合、人工神经网络、基于改进 Adaboost的方法等。图 1 身份证号码识别技术的基本原理图本文在获取字符的灰度图像后在灰度多值化的基础上提取字符的网格特征再利用模板匹配的方法进行识别。具体的流程包括身份证边缘定位身份证号码区域定位及灰度归一化身份证号码单个字符分割特征提取和身份证号码识别等如图 2 所示为身份证号码识别的具体流程。图2 身份证号码识别的处理流程2.1 居民身份证边缘定位第二代居民身份证的大小是固定的宽度为8.6 cm高度为 5.4 cm但是在获取身份证图像时由于焦距的远近不能利用它的大小信息来获取身份证在图像中所处的位置。如图 3a所示为通过摄像头获得的居民身份证图像在这一步中要求背景比较简单能和身份证形成明显对比且身份证在图像中的位置要大体居中不能过小以保证在图像的横向及纵向 3/8、4/8、5/8处能检测到居民身份证这将影响到定位的结果。为了确定身份证在图像中的位置需要对图像进行二值化但考虑到如果对整张图像进行灰度化及二值化会消耗很多时间分别在纵向及横向上在图像的 3/8、4/8 及 5/8 处截取宽度为 40 个像素的区域进行灰度化及二值化运算截取的区域如图 3b及 3c所示。常用的灰度化处理方法有加权平均法、平均值法和最大值法等。这里采用加权平均法[14]根据重要性及其他指标将 R、G、B 三个分量以不同的权值进行加权平均。由于人眼对绿色的敏感度最高对蓝色敏感度最低因此可以按公式1对 RGB 三个分量进行加权平均能得到较合理的灰度图像。f (ij) 0.299R(ij) 0.587G(ij) 0.114B(ij)) 1式中f (ij) 为像素的灰度值R(ij) 为彩色图像中 R分量的值G(ij) 为彩色图像中 G 分量的值B(ij) 为彩色图像中 B 分量的值。截取的纵向及横向区域做灰度化运算后的结果如图 4a所示。对于二值化处理采用了迭代法进行二值化其思想是利用迭代的方法最终找到一个最佳的分割阈值。对于身份证图像中所选取的区域首先遍历区域中所有点的灰度值找出该区域内的最大灰度值 Pmax 和最小灰度值 Pmin 取阈值初值 T0 (Pmax Pmin)/2 。根据 T0 将图像分割为两部分并且分别求出各部分的灰度均值 Po 和 Pb 进而计算新阈值 Ti 1 (Po Pb)/2 。若 Ti 1 Ti 则取阈值为 Ti 否则返回继续循环迭代。在灰度图像中灰度值 i 在[0255]这个区间内Si 表示灰度值为 i 的像素点的个数Ti 表示阈值那么则有经过二值化运算后的区域在边缘处与背景区分得很明显如图 4b为纵向区域在二值化后的结果。再通过从上到下的搜索及从下向上的搜索就很容易确定居民身份证上下边缘在图像中 3/8、4/8 及 5/8 处的三个边缘点坐标。如图 5 所示为根据二值化结果确定的居民身份证上下边缘三个点的位置分别为上边缘 A1左、A2中、A3右及下边缘 B1左、B2中、B3右。由于光照等其他因素的影响寻找到的边缘点并不一定是身份证的真实边缘点这个时候需要排除其中一对点该方法默认在中间区域即图像 4/8 处所确定的边缘点是准确的只需要排除另一对点 A1、B1 或 A3、 B3 。以 A2、B2 为基准点可以求得四条斜率 LA1A2、 LA3A2、LB1B2、LB3B2 当 |LA1A2 - LB1B2| |LA3A2 - LB3B2| 时则舍掉 A3、B3 这一对点反之则舍掉 A1、B1这一对点最后将得到上下边缘的各两个点作为居民身份证的上下边缘点斜率 L 作为身份证在图像中旋转的斜率。同样利用同样的方法也可以得到居民身份证左右边缘的各两个点。在知道居民身份证各条边上的两个点及求得斜率身份证在图像中的位置也就确定了。2.2 身份证号码区域定位及灰度归一化身份证号码在居民身份证上的位置是固定的在拍照获取照片时不管焦距如何变化身份证号码所在区域相对于身份证本身的位置是不变的它具有一定的比例关系。根据这一比例关系截取一包含身份证号码的矩形区域如果身份证发生了旋转即斜率 L 大于经验值0.035时则以该斜率为参考将矩形区域进行矫正。图 6所示为截取的身份证号码区域在经过矫正后的彩色图像。图 6 身份证号码彩色区域对得到的彩色图像利用式1做灰度化处理但是因为光照的原因有时候图像整体偏暗有时候图像又整体偏亮这会影响到数字字符的特征提取及最后的识别效果。因此在对图像做灰度化处理后在进行字符分割前需要将号码区域进行灰度拉伸使得像素的灰度值分布在 0到 255间也就是灰度归一化。灰度归一化的方法是对于输入图像 f (xy) 灰度级变换 T 将产生一个输出图像 g(xy) 且 g(xy) 的每一个像素值都是由 f (xy) 的对应输入像素点的值决定的g(xy) T( f (xy)) 。首先找出原图像 f (xy) 灰度的最大值max及最小值min得到系数 k 1.0 ´ 255/(max - min) 那 么 对 于 图 像 f (xy) 中 的 每 一 像 素 利 用 变 换 T g(xy) ( f (xy) - min)´ k 即 得 到 输 出 图 像 g(xy) 图 7 灰度拉伸后的身份证号码区域灰度图像2.3 单个字符的分割及大小归一化单个字符的分割是在求得灰度图像的分割阈值后根据阈值进行行投影及列投影以确定每个字符的左右及上下边界将字符的左右及上下边界坐标影射到原灰度图像即可得到每个字符的灰度图像。常用的分割方法有阈值法、区域生长法、分裂合并法、边缘检测法、人工神经网络法、分类器和聚类法等。在这里对于定位得到的数字区域首先根据迭代法找出将目标数字与背景分割开的阈值 t 然后根据阈值t 将图像在垂直方向上进行投影计算每一列上灰度值小于阈值 t 的个数对于数字间的背景区域在垂直方向上的投影值为 0即可得到数字的左右边界坐标再根据数字的左右边界将每个数字进行水平方向上的投影找到数字的上边缘及下边缘这样就可以分割出每一个字符。其中阈值 t 的计算方法[15]与前文计算阈值的方法是一样在这不再描述。对于分割出来的字符灰度图像由于输入图像不同分割得到的字符图像尺寸也不相同即使是同一幅图像中每个字符图像的尺寸也不尽相同因此还需要将字符图像进行大小的归一化目的是要使得字符图像与模板图像的尺寸一致。通过双线性插值算法对字符图像作大小归一化。双线性插值[16]是利用了需要处理的原始图像像素点周围的四个像素点的相关性通过双线性算法计算得出的。对于一个目的坐标通过向后映射法得到其在原始图像的对应的浮点坐标 (i uj v) 其中 ij均为非负整数uv 为[01]区间的浮点数则这个像素的值 f (i uj v) 可由原图像中坐标为 (ij)、(i 1j)、 (ij 1)、(i 1j 1) 所对应的周围四个像素的值决定即f (i uj v) (1 - u)´(1 - v)´ f (ij) (1 - u)´ v ´ f (ij 1) u ´(1 - v)´ f (i 1j) u ´ v ´ f (i 1j 1) 4式中 f (ij) 表示源图像 (ij) 处的的像素值以此类推这就是双线性内插值法。对于图 7 分割得到的单个字符图像再进行大小归一化之后的结果如图 8设定字符尺寸为 40×72宽 40像素高 72像素图 8 对分割得到的字符进行大小归一化后的结果2.4 特征提取灰度多值化是指灰度图像 A 按照一定的法则 f 将各个像素的灰度值从 0~255变换到 0~n - 1这个过程称为灰度多值化或 n 值化在数学上描述为其中式5中 G(xy) 为图像 A 中像素的灰度值g(xy) 为 G(xy) 经过 f 运算后的值式6表示图像 A 在经过f 运算后灰度的维数从 256 维变为 n 维当 n 2 时这个过程就是人们所熟悉的灰度二值化当 n 26 时就是灰度 26值化。一幅灰度图像再进行二值化处理时会损失掉很多信息有时还会因为图像质量问题使得二值化结果不能正确地区分出目标与背景那么在此基础上提取到的特征也就不能有效地代表字符。如图 9 为从身份证照片中截取到的号码区域该区域比较模糊但是肉眼还是能将号码识别出来图 10 为将该号码区域进行二值化处理的结果可以看出二值化之后目标即号码和背景没有被正确地区分开来像数字 6、8、9 在二值化之后中间的空白区域被填充了中间的背景像素被理解成了目标像素使得二值化结果不能正确地反映出图像原本的信息。为此提出将图像进行多值化处理而不是二值化图像中的像素被分为多类而不仅仅是被分为两类这样可以适当减少信息的损失在此基础上提取到的特征也更能有效地区分出字符。图 9 身份证号码的模糊图像图 10 模糊图像作二值化处理后结果在得到身份证号码字符的灰度图像后将字符图像作 26 值化处理。为什么要将灰度图像作 26 值化处理在身份证号码的灰度图像中对属于同一个小区域内的像素同属于目标或背景的两个像素的灰度值一般是差别不大的如图 11 为身份证号码所在区域的灰度图像在图像中间作一条水平线横穿整个图像通过统计这条水平线上各像素的灰度值发现在非数字区域也就是背景区域各像素的灰度值都是相差不大在 10 个灰度级以内同样在数字区域各像素的灰度值也是相差 10 个灰度级以内但是数字区域和背景区域的灰度值相差可以达到 60 个灰度级因此可以认为灰度值变化在 10 个灰度级以内的像素是同一类在此基础上提出将灰度图像的灰度值从 256个等级作降级处理变为 26个等级也就是进行 26 值化这样既能将像素进行分类又不会使原图像所包含的信息损失太大。图 11 身份证号码区域的灰度图像为了提取字符的网格特征首先将字符图像分为大小一致互不重叠的若干个小网格对于大小为 40×72宽 40像素高 72像素的字符图像先将字符图像划分M ´ N 个网格这里 M 10 N 12 再利用公式7将数字字符的灰度图像做 26 值化最后利用式8统计每个小网格中像素灰度在 26 值化后的平均值作为该方块的特征这些特征组合在一起构成特征向量即得到每个数字字符的二维灰度特征。其中式7是将像素的灰度进行26值化处理f (xy) 为像素的原灰度值g(xy) 为 26值化后得到的值即灰度值从原来的 0~255 降为 0~25式8是计算第 (ij) 个网格的特征值 E(ij)H 和 W 分别为该小方块的高和宽g(xy) 为该小方块中像素灰度 26值化后的值0  x W 0  y H 0  i M 0  j N 。那么字符的特征向量则等于2.5 字符识别字符识别就是将待识别字符的特征向量与模板库中保存的每个字符的特征向量进行匹配找到与待识别字符匹配的字符。本文用到的匹配方法是通过求相似度相似度最大的即认为是与待识别字符匹配的字符。求相似度的方法如下式中 S 定义为相似度Ts(ab) 为待识别字符的特征属性To(ab) 为模板的特征属性。⛄二、部分源代码function varargout homework2(varargin)% HOMEWORK2 M-file for homework2.fig% HOMEWORK2, by itself, creates a new HOMEWORK2 or raises the existing% singleton*.%% H HOMEWORK2 returns the handle to a new HOMEWORK2 or the handle to% the existing singleton*.%% HOMEWORK2(‘CALLBACK’,hObject,eventData,handles,…) calls the local% function named CALLBACK in HOMEWORK2.M with the given input arguments.%% HOMEWORK2(‘Property’,‘Value’,…) creates a new HOMEWORK2 or raises the% existing singleton*. Starting from the left, property value pairs are% applied to the GUI before homework2_OpeningFcn gets called. An% unrecognized property name or invalid value makes property application% stop. All inputs are passed to homework2_OpeningFcn via varargin.%% *See GUI Options on GUIDE’s Tools menu. Choose “GUI allows only one% instance to run (singleton)”.%% See also: GUIDE, GUIDATA, GUIHANDLES% Edit the above text to modify the response to help homework2% Last Modified by GUIDE v2.5 20-May-2013 21:21:00% Begin initialization code - DO NOT EDITgui_Singleton 1;gui_State struct(‘gui_Name’, mfilename, …‘gui_Singleton’, gui_Singleton, …‘gui_OpeningFcn’, homework2_OpeningFcn, …‘gui_OutputFcn’, homework2_OutputFcn, …‘gui_LayoutFcn’, [] , …‘gui_Callback’, []);if nargin ischar(varargin{1})gui_State.gui_Callback str2func(varargin{1});endif nargout[varargout{1:nargout}] gui_mainfcn(gui_State, varargin{:});elsegui_mainfcn(gui_State, varargin{:});end% End initialization code - DO NOT EDIT% — Executes just before homework2 is made visible.function homework2_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% varargin command line arguments to homework2 (see VARARGIN)% Choose default command line output for homework2handles.output hObject;% Update handles structureguidata(hObject, handles);% UIWAIT makes homework2 wait for user response (see UIRESUME)% uiwait(handles.figure1);% — Outputs from this function are returned to the command line.function varargout homework2_OutputFcn(hObject, eventdata, handles)% varargout cell array for returning output args (see VARARGOUT);% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Get default command line output from handles structurevarargout{1} handles.output;%载入原始身份证图像的回调函数% — Executes on button press in OriginalImg.function OriginalImg_Callback(hObject, eventdata, handles)% hObject handle to OriginalImg (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)[FileName,PathName] uigetfile(‘*.jpg’,‘Select an image’);if PathName~0str [PathName,FileName];Timread(str);axes(handles.Img);imshow(T);end%图像自动亮度调整的回调函数% — Executes on button press in autoLight.function autoLight_Callback(hObject, eventdata, handles)% hObject handle to autoLight (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)axes(handles.Img);Tgetimage;low_out0.2; high_out0.9;gamma1.518;hsvrgb2hsv(T);Ihsv(:,:,3);minLmin(min(I));maxLmax(max(I));Jimadjust(I,[minL;maxL],[low_out;high_out],gamma);hsv(:,:,3)J;rgb_atuoIhsv2rgb(hsv);axes(handles.Light);imshow(rgb_atuoI);%图像二值化的回调函数% — Executes on button press in DIP.function DIP_Callback(hObject, eventdata, handles)% hObject handle to DIP (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)axes(handles.Img);Igetimage;[m,n,r]size(I);%图像的像素为width*height%%%%%蓝色字体变黑myIdouble(I);for i1:mfor j1:nif((myI(i,j,1)15)(myI(i,j,1)130)((myI(i,j,2)165)(myI(i,j,2)90))((myI(i,j,3)220)(myI(i,j,3)135))) % 蓝色RGB的灰度范围I(i,j,1)40; %红色分量I(i,j,2)40; %绿色分量I(i,j,3)40; %蓝色分量endendend%figure, imshow(I);title(‘变色后的图像’);widthround(0.9n);heightround(0.87m);rxround(0.05n);cyround(0.075m);Isubim(I,height,width,rx,cy);%figure,imshow(I);if sum(size(I)0)3 %倘若是彩色图–2维*3先转换成灰度图Irgb2gray(I);end%figure,imhist(I);x3;%行数分为x部分y1;%列数分为y部分BWerzhihua(I,x,y);[n m l]size(BW);%图像的像素为mnc [0.65m 0.65m m m];r [0 0.85n 0.85*n 0];BW roifill(BW,c,r);BWimadjust(BW);%使用imadjust函数对图像进行增强对比度% Convert to BWthreshold graythresh(BW);BW ~im2bw(BW,0.6*threshold);[image_h image_w]size(BW);% Remove all object containing fewer than (imagen/80) pixelsBW bwareaopen(BW,floor(image_w/80));% 滤波%hfspecial(‘average’,1);%BWim2bw(round(filter2(h,BW)));%imwrite(d,‘4.均值滤波后.jpg’);axes(handles.Binary);imshow(BW);%图像分割与识别按钮的回调函数% — Executes on button press in OCR.function OCR_Callback(hObject, eventdata, handles)% hObject handle to OCR (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)axes(handles.Binary);imagen getimage;[image_h image_w]size(imagen);%figure;imshow(imagen);title(‘INPUT IMAGE’)% Convert to gray scaleif size(imagen,3)3 %RGB imageimagenrgb2gray(imagen);end%Storage matrix word from imageword[ ];reimagen;%Opens text.txt as file for writefid fopen(‘ID_card.txt’, ‘wt’);% Load templatesload templatesglobal templates% Compute the number of letters in template filenum_letrassize(templates,2);figure;plot_flag1;while 1%Fcn ‘lines’ separate lines in text[fl re]lines(re);imgnfl;[line_h line_w]size(fl);%记录下切割出来的一行字符的长宽%Uncomment line below to see lines one by one% imshow(fl);pause(1)%-----------------------------------------------------------------% Label and count connected components[L Ne] bwlabel(imgn);n1;%记录循环次数while(nNe)char_flag0;%为0时是第一次判断这个连通域flag1;%初始化两个连通域属于同个字符while(flag1)if char_flag0[r,c] find(Ln);Width0max®-min®;%连通域宽度Height0max©-min©;%连通域高度Radio0Width0/Height0;%连通域宽高比Square0Width0*Height0;%连通域面积maxrmax®;maxcmax©;minrmin®;mincmin©;endif nNe[r1,c1] find(L(n1));%寻找下一个连通域Width1max®-min®;%连通域宽度Height1max©-min©;%连通域高度Radio1Width1/Height1;%连通域宽高比Square1Width1Height1;%连通域面积Uheightmax(maxc,max(c1))-min(minc,min(c1));%合并后高度Uwidthmax(maxr,max(r1))-min(minr,min(r1));%合并后宽度UradioUwidth/Uheight;%合并后的宽高比OheigthHeight0Height1-Uheight;%重叠高度OwidthWidth0Width1-Uwidth;%重叠宽度OsquareOheigthOwidth;%重叠面积elseflag0;%这是这一行最后一个连通域endph5;%边界因子pw7;if(flag1)((Owidth-(image_w/pw)Owidth0)||(Oheigth-(line_h0.3)Oheigth0))%两个连通域较近但不重叠if((Uradio0.8)(Uradio1.2))%认为两个连通域属于同一个字符elseif Uheightline_h0.4;%连通域的合并之后高度过小的认为是一个字符的一部分很可能是边旁部首else flag0;%否则这两个连通域属于不同字符endelseif(flag1)(Owidth-(image_w/pw))%两个连通域里相距较远flag0;%两个连通域属于不同字符% elseif(flag1)((Owidth0)||(Oheigth0))%两连通域重叠elseif(flag1)((Owidth0))%两连通域重叠if(((Uradio0.78)(Uradio1.3)))%认为两个连通域属于同一个字符elseif(Osquare0.4min(Square0,Square1)(Uwidthimage_w/45))elseflag0;%两个连通域属于不同字符endelse flag0;%两个连通域属于不同字符endif flag1%经过上面判断两个连通域属于同一个字符进行连通域合并Width0Uwidth;%连通域宽度Height0Uheight;%连通域高度Radio0Width0/Height0;%连通域宽高比Square0Width0Height0;%连通域面积maxrmax(maxr,max(r1));maxcmax(maxc,max(c1));minrmin(minr,min(r1));mincmin(minc,min(c1));nn1;%指向下一个连通域char_flag1;endend %while(flag1)的end% Extract letter n1imgn(minr:maxr,minc:maxc); % Resize letter (same size of template) img_rimresize(n1,[36 23]); subplot(10,10,plot_flag),imshow(img_r);title(plot_flag); plot_flagplot_flag1; %Uncomment line below to see letters one by one % imshow(img_r);title(n);pause(0.5) %------------------------------------------------------------------- % Call fcn to convert image to text letterread_letter(img_r,num_letras); % Letter concatenation word[word letter]; nn1; end % while(nNe)的end %fprintf(fid,%s\n,lower(word));%Write word in text file (lower) fprintf(fid,%s\n,word);%Write word in text file (upper) % Clear word variable word[ ]; %*When the sentences finish, breaks the loop if isempty(re) %See variable re in Fcn lines break endendfclose(fid);%Open ‘ID_card.txt’ filewinopen(‘ID_card.txt’)% — Executes on button press in Exit.function Exit_Callback(hObject, eventdata, handles)% hObject handle to Exit (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)clc;close all;close(gcf);⛄三、运行结果⛄四、matlab版本及参考文献1 matlab版本2014a2 参考文献[1]李开,陈礼安,曹计昌.基于灰度多值化的身份证号码识别[J].计算机工程与应用. 2015,51(13)3 备注简介此部分摘自互联网仅供参考若侵权联系删除 仿真咨询1 各类智能优化算法改进及应用生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化2 机器学习和深度学习方面卷积神经网络CNN、LSTM、支持向量机SVM、最小二乘支持向量机LSSVM、极限学习机ELM、核极限学习机KELM、BP、RBF、宽度学习、DBN、RF、RBF、DELM、XGBOOST、TCN实现风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断3 图像处理方面图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知4 路径规划方面旅行商问题TSP、车辆路径问题VRP、MVRP、CVRP、VRPTW等、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、车辆协同无人机路径规划、天线线性阵列分布优化、车间布局优化5 无人机应用方面无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配6 无线传感器定位及布局方面传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化7 信号处理方面信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化8 电力系统方面微电网优化、无功优化、配电网重构、储能配置9 元胞自动机方面交通流 人群疏散 病毒扩散 晶体生长10 雷达方面卡尔曼滤波跟踪、航迹关联、航迹融合
返回列表