matlab获取图片上鼠标所点的点坐标并复制给(x.y)
时间: 2024-04-17 15:26:48 浏览: 23
在MATLAB中获取鼠标点击点的坐标,并将其赋值给变量(x, y),可以使用以下代码:
```matlab
function mouseClickCallback(src, event)
x = event.IntersectionPoint(1);
y = event.IntersectionPoint(2);
assignin('base', 'x', x);
assignin('base', 'y', y);
disp(['鼠标点击坐标:', num2str(x), ', ', num2str(y)]);
end
% 读取图像
image = imread('image.jpg');
% 显示图像
imshow(image);
% 注册鼠标点击事件监听器
set(gcf, 'WindowButtonDownFcn', @mouseClickCallback);
```
在这个示例中,当鼠标点击事件发生时,函数`mouseClickCallback`会将点击点的x坐标赋值给变量x,将y坐标赋值给变量y,并在MATLAB命令窗口显示这些坐标。`assignin('base', 'x', x)`和`assignin('base', 'y', y)`将变量x和y分配给MATLAB的工作空间,以便您可以在代码中访问它们。
请注意,这段代码将在当前打开的图像窗口上注册一个鼠标点击事件的监听器。如果您将代码粘贴到MATLAB命令窗口中运行,则需要先显示一个图像窗口。您可以使用`imshow(image)`来显示图像。
希望这对您有所帮助!