前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >相似的像素保持在同一组中的梯度的函数的应用。

相似的像素保持在同一组中的梯度的函数的应用。

作者头像
裴来凡
发布2022-05-28 15:20:43
5870
发布2022-05-28 15:20:43
举报
文章被收录于专栏:图像处理与模式识别研究所

Week_05_Lec_03_Code.m

代码语言:javascript
复制
I = imread('circuit.tif');
rotI = imrotate(I, 33, 'crop');
BW = edge(rotI, 'canny');
[H, T, R] = hough(BW);
imshow(H, [], 'XData', T, 'YData', R, 'InitialMagnification', 'fit');
xlabel('\theta'), ylabel('\rho');
axis on, axis normal, hold on;
P = houghpeaks(H, 5, 'threshold', ceil(0.3 * max(H(:))));
x = T(P(:, 2));
y = R(P(:, 1));
plot(x, y, 's', 'color', 'white');
%Find lines and plot them
lines = houghlines(BW, T, R, P, 'FillGap', 5, 'MinLength', 7);
figure, imshow(rotI), hold on;
max_len = 0;
for k = 1:length(lines)
    xy = [lines(k).point1; lines(k).point2];
    plot(xy(:,1), xy(:,2), 'LineWidth', 2, 'Color', 'green');
    %plot beginnings and ends of lines
    plot(xy(1,1), xy(1,2), 'x', 'LineWidth', 2, 'Color', 'yellow');
    plot(xy(2,1), xy(2,2), 'x', 'LineWidth', 2, 'Color', 'red');
    %determine the endpoints of the longest line segment
    len = norm(lines(k).point1 - lines(k).point2);
    if(len > max_len)
        max_len = len;
        xy_long = xy;
    end
end

Week_05_Lec_05_Code.m

代码语言:javascript
复制
I = imread('circuit.tif');
rotI = imrotate(I, 33, 'crop');
BW = edge(rotI, 'canny');
[H, T, R] = hough(BW);
imshow(H, [], 'XData', T, 'YData', R, 'InitialMagnification', 'fit');
xlabel('\theta'), ylabel('\rho');
axis on, axis normal, hold on;
P = houghpeaks(H, 5, 'threshold', ceil(0.3 * max(H(:))));
x = T(P(:, 2));
y = R(P(:, 1));
plot(x, y, 's', 'color', 'white');
%Find lines and plot them
lines = houghlines(BW, T, R, P, 'FillGap', 5, 'MinLength', 7);
figure, imshow(rotI), hold on;
max_len = 0;
for k = 1:length(lines)
    xy = [lines(k).point1; lines(k).point2];
    plot(xy(:,1), xy(:,2), 'LineWidth', 2, 'Color', 'green');
    %plot beginnings and ends of lines
    plot(xy(1,1), xy(1,2), 'x', 'LineWidth', 2, 'Color', 'yellow');
    plot(xy(2,1), xy(2,2), 'x', 'LineWidth', 2, 'Color', 'red');
    %determine the endpoints of the longest line segment
    len = norm(lines(k).point1 - lines(k).point2);
    if(len > max_len)
        max_len = len;
        xy_long = xy;
    end
end

Week_05_Lec_05_Code.m

代码语言:javascript
复制
I = imread('coins.png');
level = graythresh(I);
BW = im2bw(I, level);
figure, imshow(I), figure, imshow(BW), figure, imhist(I);
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 图像处理与模式识别研究所 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档