我提取斑点的轮廓方式如下:如何缩放边界框坐标?
bw = im2bw(image, threshold);
boundaries = bwboundaries(bw);
plot(boundaries(:, 2), boundaries(:, 1), 'k', 'LineWidth', 2);
什么,我想现在要做的,就是规模boundaries
这样我就可以绘制原boundaries
内boundaries
的缩小版。是否有捷径可寻?
下面是关于结果应该是什么样子的示例:黑色是原始边界框,红色是相同的边界框,只是缩放(但与黑色框的中心相同)。
编辑: 我想我可以单独采用逐点,但后来我还是回到中心坐标。有没有更好的方法来做到这一点?
scale = 0.7
nbr_points = size(b, 1);
b_min = nan(nbr_points, 2);
for k = 1 : nbr_points
b_min(k, :) = ([scale 0; 0 scale] * b(k, 1:2)')';
end
重新调整每个点到中心的距离可能会更舒服吗?如下:从矩阵中扣除中心,重新调整中心。 –