Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

How to write the code to apply the formula to the image and the result is low-pass filtered. The red region is the highest intensity which corresponds to the barcode.

Formula: Formula

Original image: Original

Processed Image: Localization of Barcode

edited How to plotting the points??

edited Plotting the Points: Plot the points

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
289 views
Welcome To Ask or Share your Answers For Others

1 Answer

I tend to agree with nikie that you should be working from a book if you are at this basic level, but here is an answer anyway.

I = imread('your_image');
# convert I to grayscale double as appropriate using rgb2gray(), double(), etc.

# calculate the gradients and the formula you provided
[dIx, dIy] = gradient(I);
B = abs(dIx) - abs(dIy);

# do your low-pass filtering
H = fspecial('gaussian', 20, 10);
C = imfilter(B, H);

imagesc(C); colorbar;

Good luck! Make sure you understand this code before making copypasta.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...