我正在使用matlab中的imrect
函数来显示imrect
矩形的ROI的canny和sobel边缘。
其实我的matlab gui中有两个轴。在一个轴上,我显示用户选择的图像并使用imrect
函数放置初始矩形。相应于imrect
矩形,我在第二轴上显示了canny edge或sobel edge。到目前为止一切都很好
现在我希望用户拖动或调整矩形大小然后自动我希望在轴2上显示最新的矩形canny和sobel边缘。
如何查找imrect
矩形位置是否已更改?
任何人都可以帮助我。如果任何网站链接有帮助请放弃。
答案 0 :(得分:4)
您可以使用addNewPositionCallback
方法添加自己的回调函数,以便在矩形更改其位置时执行。
首先,您需要创建一个使用新矩形位置调用的函数:
function myFunc( newRect )
fprintf(1, 'New rect position = [%d %d %d %d]\n', newRect );
现在您可以使用imrect
注册该功能:
rHandle = imrect(); %// create the interactive rectangle
addNewPositionCallback( rHandle, @myFunc ); %// register function myFunc to be called when rect is changed