人数统计算法matlab程序。实现图像处理最后统计人数。有偿回报

人数统计算法matlab程序。实现图像处理最后统计人数。有偿回报,第1张

头发区域面积应该在一定范围内  衣服区域应该很大

所以区域面积在一定范围内看做是人头 否则就去除

可以用regionprops内的area去判断  同时加上长短轴 这里贴一个简单例子

clc; clear all; close all;

I = imread('c:\\cejpg');

I1 = rgb2gray(I);

bw1 = im2bw(I1, graythresh(I1));

bw1 = ~bw1;

bw2 = imopen(bw1, strel('disk', 10));

bw2 = bwareaopen(bw2, 500);

bw3 = bwareaopen(bw2, 1000);

bw4 = bw2(~bw3);

[L, num] = bwlabel(bw4);

Lrgb = label2rgb(L, 'jet', 'w', 'shuffle');

figure;

subplot(3, 2, 1); imshow(I)

subplot(3, 2, 2); imshow(I1)

subplot(3, 2, 3); imshow(bw1)

subplot(3, 2, 4); imshow(bw2)

subplot(3, 2, 5); imshow(bw4)

subplot(3, 2, 6); imshow(I)

hold on;

himage = imshow(Lrgb);

set(himage, 'AlphaData', 05);

程序看,xdata是在if条件循环中赋值的,如果条件不满足,xdata是得不到值的,这时,if条件外的程序用到xdata时,就会有出错提示。要改,就要在if条件循环前面先赋值,如全0,再在if条件中修改。

参考方案如下:

1、二值化明显就把圆截取出来了,获取钟表的高宽;

3、二值化后反色,获取指针二值图,hough直线检测,检测到三条(71+版本才有这个函数);

4、[Len,

ind]

=

sort(Len(:),

'descend');降序排列,获取分钟、秒针、时针;

5、直线出来了,斜率出来了,获取角度;

6、如果直线2个端点的坐标和小于钟表的高,

就知道处于1

3象限,反之处于2

4象限;

我也刚做过,不知道是和你的一样不。仿真模型输出数据Y

直接在matlab里编程

z=iddata(Y);

armax(z,'na',na,'nc',nc);

就这两条语句就ok,其中na,nc是你自己需要的阶次,自己输入。比如,我想要阶次为10,就写成armax(z,'na',10,'nc',10)

希望能帮到你!

以上就是关于人数统计算法matlab程序。实现图像处理最后统计人数。有偿回报全部的内容,包括:人数统计算法matlab程序。实现图像处理最后统计人数。有偿回报、这是一个matlab识别车牌的程序,为什么系统老是提示xdata未定义急求大神帮解决。。谢谢!!!、用matlab怎么识别一个钟表图片中的时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10121815.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存