Как повернуть изображение так, чтобы штрих-код был горизонтальным? - MATLAB - PullRequest
1 голос
/ 01 февраля 2012

Как я могу повернуть изображение, используя штрих-код, чтобы определить угол и повернуть его, чтобы сделать его горизонтальным.Я использовал Hough Transform, но я могу только немного повернуть вправо.

Original Image Rotated Image

rgb = imread('barcode10.jpg');
% Resize Image
rgb = imresize(rgb,0.33);
figure(),imshow(rgb);
% Convert from RGB to Gray
Igray = double(rgb2gray(rgb));
BW2 = edge(Igray,'canny');
figure(),imshow(BW2);
% Perform the Hough transform
[H, theta, rho] = hough(BW2);
 % Find the peak pt in the Hough transform
peak = houghpeaks(H);
 % Find the angle of the bars
barAngle = theta(peak(2));
J = imrotate(rgb,barAngle,'bilinear','crop');
figure(),imshow(J);

1 Ответ

1 голос
/ 01 февраля 2012

Сначала вам нужно обнаружить линии. Для определения линии вы можете использовать Hough transform .

...