【发布时间】:2016-04-19 19:17:43
【问题描述】:
我正在尝试对图像执行 gabor 过滤器。
%% Read
clear all;
close all;
clc;
I=imread('test.png');
imshow(I);
%% Crop
I2 = imcrop(I);
figure, imshow(I2)
m=size(I2,1);
n=size(I2,2);
%% Gabor
phi = 7*pi/8;
theta = 2;
sigma = 0.65*theta;
for i=1:3
for j=1:3
xprime= j*cos(phi);
yprime= i*sin(phi);
K = exp(2*pi*theta*i(xprime+ yprime));
G= exp(-(i.^2+j.^2)/(sigma^2)).*abs(K);
end
end
%% Convolve
for i=1:m
for j=1:n
J(i,j)=conv2(I2,G);
end
end
imshow(uint8(J))
我总是收到这个错误。
??? Subscript indices must either be real positive integers or logicals.
不知道怎么解决...
【问题讨论】:
-
什么是“J”?请记住,conv2 将在此处返回一个矩阵,但您试图将其存储在 J(i,j) 中。
标签: matlab