我獲得了以下影像(這是一個二進制檔案)。我想知道是否有一種方法可以獲取 MATLAB 圖中粉紅色線條的坐標,這樣當我在 matlab 圖中移動滑鼠游標時,我可以獲得有關我用滑鼠指向的當前坐標的資訊.

uj5u.com熱心網友回復:
您可以使用該drawcrosshair()函式獲取影像上任何位置的坐標。
例如,
figure
imshow(myImage) %generates a figure that shows your figure (maybe myImage is a 2-dimensional matrix)
ch = drawcrosshair(); %click on a location in the image that you would like to get the coordinates for
p = round(ch.Position); %grab the (rounded) coordinates of the crosshair location
如果您還輸入一些代碼來查找粉紅色線條的位置,也許使用簡單的顏色匹配,例如
pinkIndices = find((img(:, :, 1) == 1) & (img(:, :, 2) == 0) & (img(:, :, 3) == 1)); %pink when red and blue channels == 1 but green channel == 0
那么您可以使用這些“pinkIndices”四舍五入到最接近的已知粉紅色索引,而不是簡單地四舍五入到最接近的整數(如上面的第一組代碼所做的那樣)。
請注意,此方法僅在執行單擊后為您提供游標的位置,但您可以將這樣的代碼放入回圈中,以生成在每次單擊后報告游標新位置的內容。您也可以嘗試在每次更改滑鼠位置時自動單擊(請參閱此處),但這可能比它的價值更麻煩。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/486169.html
上一篇:MATLAB散點圖圖例
