对称物体在自然图像和合成图像中普遍存在。作为对称物体最重要的全局特征之一,对称性检测长期以来都是计算机视觉领域的研究热点,并在图片的语义提取、图像语义理解以及情感识别等任务上具有广泛的应用。对称物体的检测技术,就是将图片中所蕴含的对称目标信息提取出来。一般而言,具体可包含提取对称目标物体的位置、对称类别(如平移对称、旋转对称和反射对称等)及其所包含的几何信息,如反射对称的对称轴。
传统的对称性检测方法是以特征为中心的,顾名思义,这种方法是基于提取的一个图像特征或多个特征的。具体而言它首先计算出图像的普遍性特征表征(如 SIFT 特征),然后根据该特征的特性估计对称目标所需的参数。以特征为中心的方法的优点是方便快捷,无需在特征层面投入太多精力,第三方的特征表达就足以抽象出对图像的表征。然而,这类方法的缺点也很明显,就是需要去优化大量的已计算选出来的特征匹配对,这也是这类方法目前的主要解决的难点;而且值得注意的是,由于忽视的特征工程在对称性检测任务上的作用,特征的重要性和特殊性没有被考虑进入特征的构建中,导致了较低层次特色和较高层次的视觉检测任务之间的“语义鸿沟”被忽略了。
鉴于此,采用小波分析进行纹理和颜色反射对称性检测,运行环境为MATLAB R2018A,主运行代码如下:
clc; clear all; close all; warning off;
%%
srcDir = './input';
file = '832053.jpg';
%%
[~,name,~] = fileparts(file);
img = imread([srcDir '/' file]);
img = imresize(img,0.25);
disp(['Processing : ' name]);
tic;
[SymOcLgHSV,voteMap] = symBilOurCentLogGaborHSV(img);
toc;
%%
Num = 5;MarkerEdgeColors=hsv(Num);
str = {};
mkSize = 10;
lnWidth = 2;figure;
imshow(img); hold on;
for j=1:min(Num,size(SymOcLgHSV,1))X = [SymOcLgHSV(j,1) SymOcLgHSV(j,3)];Y = [SymOcLgHSV(j,2) SymOcLgHSV(j,4)];plot(X,Y, '-s','Color',MarkerEdgeColors(j,:),...'MarkerSize',mkSize,'LineWidth',lnWidth);str{j} = [num2str(j) ' - ' num2str(SymOcLgHSV(j,5))];
end
legend(str,'Location','BestOutside');
hold off;
%%完整代码:https://mbd.pub/o/bread/ZZWWk55tfigure,imagesc(voteMap); colormap('jet'); axis off;
- 擅长领域:现代信号处理,机器学习,深度学习,数字孪生,时间序列分析,设备缺陷检测、设备异常检测、设备智能故障诊断与健康管理PHM等。