Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
291 views
in Technique[技术] by (71.8m points)

image - Applying the formula to determine the barcode - Matlab

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

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

1 Reply

0 votes
by (71.8m points)

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.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

1.4m articles

1.4m replys

5 comments

56.9k users

...