dsg*_*dsg 6 matlab image pixel coordinate
什么是从轴坐标变换的优选方式(例如那些由取入plot或在输出那些point1和point2的houghlines),以像素的图像中的坐标?
我在Mathworks文档中看到了函数axes2pix,但目前还不清楚它是如何工作的.具体来说,第三个论点是什么?这些例子只是传入30,但目前还不清楚这个值来自哪里.解释取决于对其他几个功能的了解,我不知道.
相关问题:轴坐标与像素坐标?建议使用poly2mask,这将适用于多边形,但我如何为单个点或点列表做同样的事情?
该问题还链接到脚本以将图像转换为图形坐标和从图形坐标转换图像,但该代码引发了异常:
Error using /
Matrix dimensions must agree.
Run Code Online (Sandbox Code Playgroud)
可能有一种我没有听说过的内置方法,但这应该不难从头开始......
set(axes_handle,'units','pixels');
pos = get(axes_handle,'position');
xlim = get(axes_handle,'xlim');
ylim = get(axes_handle,'ylim');
Run Code Online (Sandbox Code Playgroud)
使用这些值,您可以轻松地将轴坐标转换为像素。
x_in_pixels = pos(1) + pos(3) * (x_in_axes-xlim(1))/(xlim(2)-xlim(1));
%# etc...
Run Code Online (Sandbox Code Playgroud)
以上用作pos(1)图中轴的 x 偏移。如果您不关心这一点,请不要使用它。同样,如果您希望它位于屏幕坐标中,请添加通过以下方式获得的位置的 x 偏移量get(figure_handle,'position')