【问题标题】:Finding area in image with maximum variation of pixels在图像中寻找像素变化最大的区域
【发布时间】:2018-09-01 13:44:54
【问题描述】:

我正在努力使用某种算法从像素变化最大的图像中提取区域。预处理后得到以下图像。

我做了以下预处理步骤

x = imread('test2.jpg');
gray_x = rgb2gray(x);
I = medfilt2(gray_x,[3 3]);
gray_x = I;

%%
canny_x = edge(gray_x,'canny',0.3);
figure,imshow(canny_x);

%%
s = strel('disk',3);
si = imdilate(canny_x,s);
%figure5
figure; imshow(si);
se = imerode(canny_x,s);title('dilation');
%figure6
figure; imshow(se);title('Erodsion');
I = imsubtract(si,se);
%figure7
figure; imshow(I);

基本上我正在努力的是使用图像处理制作武器检​​测系统。我想将可能的区域定位为武器,以便我可以将它们提供给我的分类器以识别它是否是武器。有什么建议么?谢谢你

【问题讨论】:

  • “最大像素变化”是什么意思?您是否要求像素值从邻居到邻居经常变化的区域?为什么那些更有可能包含武器?

标签: matlab image-processing computer-vision


【解决方案1】:

一个可能的解决方案是:

  • 查找图像中的角点(Harris 角点等)
  • 将所有角点的值设置为白色,而其余图像将为黑色
  • 取一个矩形窗口并遍历整个图像
  • 对该矩形窗口中的所有白色像素求和
  • 选择所有区域中总和最大的区域

【讨论】:

  • 听起来像移动平均窗口?整个过程不会太慢吗?
  • @AbdulRehman:移动平均线非常便宜,至少在带有矩形窗口的情况下。与哈里斯检测器相比,它无需担心成本。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-08
  • 2016-05-31
相关资源
最近更新 更多