• 【图像识别】基于hog特征的机器学习交通标识识别附matlab代码


    ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

    🍎个人主页:Matlab科研工作室

    🍊个人信条:格物致知。

    更多Matlab仿真内容点击👇

    智能优化算法  神经网络预测 雷达通信  无线传感器

    信号处理 图像处理 路径规划 元胞自动机 无人机

    ⛄ 内容介绍

    ​交通标志的检测与识别是智能车无人驾驶的重要组成部分,它也是解决交通安全问题的一种有效方法。在现实中由于分辨率,气象条件,照明强度和运动模糊等干扰,交通标志的图像质量通常很差,很难被检测,所以如何排除以上干扰,提高交通标志的检测和识别准确率是当前这一领域亟待解决的问题。交通标志的检测与识别问题主要包括两个部分:如何在获取的图像中准确找到交通标志,如何对提取的交通标志图片实现准确识别或分类。本文从这两个方向出发,分别对检测和识别方法进行了研究。对于交通标志的检测,本文采取的是基于RGB颜色空间和基于归一化相关系数相结合的交通标志检测方法。

    ⛄ 部分代码

    clc;

    clear all;

    close all;

    restoredefaultpath;

    addpath(genpath(pwd));

    [File,Path] = uigetfile('*','Select the Image file');

    y=imread(strcat(Path,File));

    y=imresize(y,[250 300]);

    figure,

    subplot(241)

    imshow(y)

    title('Input image')

    y1=y;

    s1=size(y);

    src_img=y;

    if(numel(s1) > 2)

        y=rgb2gray(y);

    end

    subplot(242)

    imshow(y)

    title('Grayscale image')

    %% find color MSER

    R=double(src_img(:,:,1));

    G=double(src_img(:,:,2));

    B=double(src_img(:,:,3));

    ohmRB=max(R./(R+G+B),B./(R+G+B));

    subplot(243)

    imshow(uint8(ohmRB),[])

    title('Normalized RB')

    I = uint8(mat2gray(ohmRB)) ;

    %% Connected Component Analysis

    f=im2bw(ohmRB);

    f=bwareaopen(f,50);

    subplot(244)

    imshow(f)

    title('Morphology Filter')

    connComp = bwconncomp(f); % Find connected components

    stats = regionprops(connComp,'Area','Eccentricity','Solidity');

    disp(stats)

    %% High Area Detected

    clear s

    s=regionprops(f,{'Area';'EquivDiameter';'BoundingBox';'Eccentricity'})

    [v ind]=max([s.Area]);

    D=s(ind).EquivDiameter;

    %

    A=pi.*D.^2.0/4.0;

    %

    Diff=abs(A-s(ind).Area)

    zk=imcrop(y1,s(ind).BoundingBox);

    subplot(245)

    imshow(zk)

    s(ind).Eccentricity

    zk1=imcrop(f,s(ind).BoundingBox);

    yk=imfill((zk1),'holes');

    subplot(246),imshow(yk)

    title('Filling Holes')

    %% Verify Circle

    clear s

    Ibw1=yk;

    s1  = regionprops(Ibw1,'MajorAxisLength','MinorAxisLength','Area','centroid');

    ind=find([s1.Area]==max([s1.Area]));

    centroids = cat(1, s1.Centroid);

    Router=s1.MajorAxisLength./2.0;

    Rinner=s1.MinorAxisLength./2.0;

    [B,L] = bwboundaries(Ibw1,'noholes');

    ⛄ 运行结果

    ⛄ 参考文献

    [1]鲁寒凝. 基于HOG特征的交通标志检测与识别算法研究[D]. 长安大学.

    ❤️ 关注我领取海量matlab电子书和数学建模资料

    ❤️部分理论引用网络文献,若有侵权联系博主删除

  • 相关阅读:
    docker模拟mysql 主从
    信息化与信息系统4
    零基础解读ChatGPT:对人类未来工作是威胁还是帮助?
    陈吉宁经典演讲:平庸与卓越的差别
    基于SSM的大学校医管理系统
    C# 设置PDF表单不可编辑、或提取PDF表单数据
    斐波那契数
    内存管理
    TypeScript 面向对象编程
    前端必备的 HTTP 知识!看这篇就够了!!
  • 原文地址:https://blog.csdn.net/matlab_dingdang/article/details/127590801