我有一个矩阵,每个像素的图像都有段索引。如何可视化细分的边框?最明显的想法是使用diff过滤器来获取边缘图,但它看起来非常难看。如何使图像看起来像这里? http://www.vlfeat.org/overview/slic.html
UPD:我试过这个,看起来还不错。代码本身看起来很丑陋,也许它可以用更优雅的形式编写。
boundaries = zeros(size(segments));
boundaries(2:end, :) = boundaries(2:end, :) + (segments(2:end, :) ~= segments(1:end-1, :));
boundaries(:, 2:end) = boundaries(:, 2:end) + (segments(:, 2:end) ~= segments(:, 1:end-1));
答案 0 :(得分:0)
如果你有索引的位置(例如边框所在的二进制掩码),你可以使用imoverlay
来做到这一点。
http://www.mathworks.co.uk/matlabcentral/fileexchange/10502-image-overlay
对于更快的东西,特别是如果你只需要一种颜色,你为什么不做一些像
这样的事情(假设边框存储在逻辑数组中:borders
并且您在img
中成像)
img(borders) = 0
使borders
蒙版中的所有像素变黑