how can i apply the sobel operator in horizontal direction?

75 ビュー (過去 30 日間)
Maninder
Maninder 2014 年 11 月 4 日
回答済み: Anand 2014 年 11 月 4 日
how can i apply the sobel operator in horizontal direction in matlab R2011a?

回答 (2 件)

Anand
Anand 2014 年 11 月 4 日
If you want the edge detected image, you can use the edge function as follows:
BW = edge(I,'sobel','vertical');
If you want just the filtered output image, you can use imfilter with a filter kernel generated by the fspecial function like so:
% generate horizontal edge emphasis kernel
h = fspecial('sobel');
% invert kernel to detect vertical edges
h = h';
J = imfilter(I,h);

Image Analyst
Image Analyst 2014 年 11 月 4 日
What does that mean? The filter is applied in both directions - over the whole image. You can align the kernel in whatever orientation you want - not sure which orientation you call horizontal.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by