我正在用 python 進行一個影像處理專案,我需要在其中更改坐標系 
我認為它類似于矩陣變換并嘗試過但它不起作用,我已經采取了紅點的坐標

uj5u.com熱心網友回復:
簡單地減去 256 再除以 512。連接是你看到 256 的值被映射到 0。因此,0 被映射到 -256,256 被映射到 0 和 512 被映射到 256。但是,你進一步需要范圍內的值[-0.5, 0.5]。將所有內容除以 512 即可完成此操作。
因此關系為:
out = (in - 256) / 512 = (in / 512) - 0.5
從上面的示例輸入中嘗試一些值,以說服自己這是正確的關系。
如果您想將其形成為矩陣乘法,則可以將其解釋為具有縮放和平移但沒有旋轉的仿射變換:
[ 1/512 0 -0.5 ]
K = [ 0 1/512 -0.5 ]
[ 0 0 1 ]
請注意,您需要使用齊次坐標來實作所需的結果。
例如:
(x, y) = (384, 256)
[X] [ 1/512 0 -0.5 ][384]
[Y] = [ 0 1/512 -0.5 ][256]
[1] [ 0 0 1 ][ 1 ]
[X] [384/512 - 0.5] [ 0.25 ]
[Y] = [256/512 - 0.5] = [ 0 ]
[1] [ 1 ] [ 1 ]
只需洗掉最后一個坐標即可獲得 (0.25, 0) 的最終答案。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/361757.html
標籤:图像处理 矩阵 矩阵乘法 matplotlib-底图
上一篇:在python中將線性透明漸變應用于具有透明背景的影像部分
下一篇:如何計算給定顏色影像中的角點
