MATLAB代做  | MATLAB代写  | MATLAB有偿编程
首 页
当前位置:MATLAB代做|MATLAB代写|MATLAB有偿编程matlab源码图像分析
人民币 币值识别 图像处理 图像分割 图像旋转角度源码程序        [↓跳到下载地址]
官方主页:源码共享网站:www.buycode.cn

联系方式:客服QQ:1747812398 买代码源码软件站,欢迎咨询

运行环境:Win9X/2000/XP/2003/

源码语言:简体中文

源码类型:源码程序 - 图像分析

推荐星级:

更新时间:2016-03-23 10:56:28

源码简介

算法依据:现实中不同面值的人民币长宽比是特定的,因此可根据人民币的长宽比来进行币值分类。
基本原理:同上。
 
不多说了,直接上代码:
clc
clear
close all
%代写程序&算法设计 扣扣: 380238062
% 转载时请保留
rmb(1,1) = 100;rmb(2,1) = 155/77;  %现实纸币长宽比例保存
rmb(1,2) = 50;rmb(2,2) = 150/70;
rmb(1,3) = 20;rmb(2,3) = 145/70;
rmb(1,4) = 10;rmb(2,4) = 140/70;
rmb(1,5) = 5;rmb(2,5) = 135/63;
rmb(1,6) = 1;rmb(2,6) = 130/63;

ima = getImage();  %读入图像
figure;imshow(ima);title('原始图像')
[m,n,k] = size(ima); %获取图像尺寸
if k~=1   %如果是彩色图像,则转为灰度图像
    ima = rgb2gray(ima);
end
figure;imshow(ima);title('灰度图像')
imaBw = im2bw(ima,0.3);  %二值化,调用matlab自带函数
figure;imshow(imaBw);title('二值图像')
imaOut = medfilt2(imaBw,[7 7]);  %对二值图像进行中值滤波,去掉细小的干扰点
figure;imshow(imaOut);title('预处理后图像')
% 估计图像的偏转角度
con = 0;
for j = 300:600
    for i = 1:600
        if imaOut(i,j) ~= imaOut(i+1,j)
            con = con + 1;
            tempX(con) = i+1;
            tempY(con) = j;
            break;
        end
    end
end
for i = 1:length(tempX)-1  %直线斜率计算
    xl(i) = (tempX(i+1) - tempX(i))/(tempY(i+1) - tempY(i));
end
xielv = sum(xl)/length(xl);  %求均值
angle = atan(xielv)*180/pi; %求偏转角
imaR = imrotate(imaOut,angle);  %对图像旋转,得到正放纸币
figure;imshow(imaR);title('旋转后图像');
[r,c] = find(imaR~=0);
ra = avg(r);ca = avg(c);
ra = fix(ra);ca = fix(ca);  % 找出纸币的 中心点
con = 0;
for i = ra-100:ra+100  %对中心点附近的200行,进行长度统计,并求平均,计算出长度
    [row,col] = find(imaR(i,:)~=0);
    con = con + 1;
    chang(con) = max(col) - min(col);
end
chang = avg(chang);
con = 0;
for j = ca - 100:ca+100%对中心点附近的200列,进行宽度统计,并求平均,计算出宽度
    [row,col] = find(imaR(:,j)~=0);
        con = con + 1;
    kuan(con) = max(row) - min(row);
end
kuan = avg(kuan);
bili = chang/kuan; %长宽比例
      
minDis = 10;  %与真实比例比较,最接近的为识别结果
for i = 1:size(rmb,2)
    chaju = abs(bili - rmb(2,i));
    if chaju        minDis = chaju;
        out = rmb(1,i);
    end
end

if out== 5 | out==50  %  这部分主要是针对常见的识别错误,进行了二次分类,相当于细化了判据
    xxxx = chang*kuan/(m*n);
    if xxxx > 0.5
        out = 50;
    else
        out = 5;
    end
end
if out== 1 | out==20
    xxxx = chang*kuan/(m*n);
    if xxxx > 0.5
        out = 20;
    else
        out = 1;
    end
end
if out== 100 | out==10
    xxxx = chang*kuan/(m*n);
    if xxxx > 0.5
        out = 100;
    else
        out = 10;
    end
end
 
 xlabel(['经识别,该币币值为:' num2str(out)])    %显示识别结果

function a = avg(x)
a = sum(x)/length(x);


提 示:本站所有源码只提供浏览,需要定制的朋友可以联系在线客服!
注意:价格根据项目的难易程度来定价格业务咨询

人民币 币值识别 图像处理 图像分割 图像旋转角度源码程序 --下载地址

注意:为避免不必要的误会,本站项目里的源码只公开部分需要的联系在线客服

本站长期招聘程序代写高手,欢迎加入华南地区matlab团队

想创业却没有经验的人

无论你是否有过网上开店的经验,都可以随时联系在线客服,建立自己独立的网站
想开网店却不知道如何入手

淘宝创业成本低而且风险小,如果想开淘宝店的朋友可以联系在线客服。
想兼职创业,却不擅长交际与服务的人

在家创业月入5000元。网站程序+百套群发工具+网赚资料+域名+空间+本站终身代理资格,这样你网赚的条件全具备了。每天3小时管理、推广、收钱。
缺乏能快速赢利型产品的人

导入多种最新流行营销软件+网赚教程,让入驻者轻松加盟、复制有效成交技巧、快速赚钱。

源码评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

浏览说明

* 本站所有源码全部公开,随时随地浏览!
* MATLAB软件如用于商业用途,请购买正版!
* 如果您发现下载链接错误,请点击报告错误谢谢!
* 站内提供的所有软件包含破解及注册码均是由网上搜集,若侵犯了你的版权利益,敬请来信通知我们!
Copyright © 2008-2014 www.buycode.cn. All Rights Reserved.
页面执行时间:234.37500 毫秒