簡體   English   中英

使用 Numpy 進行親和矩陣計算

[英]Affinity Matrix Calculation using Numpy

我正在嘗試為圖像創建親和矩陣。 我現在嘗試使用簡單的像素值差異,我的圖像是 84x84,展平它是一個大小為 7056 的向量,這給了我大小為 7056x7056 的親和矩陣 A。 為了填寫親和力矩陣的值,我從顯而易見的方法開始:

import matplotlib.pyplot as plt
import numpy as np

Img = plt.imread("twoObj.bmp")
Img2 = Img.flatten()
(n,) = Img2.shape
print n
A = np.zeros((n,n))
for i in range(n):
    for j in range(n):
        A[i,j] = np.abs(Img2[i] - Img2[j])

但這需要很長時間才能執行。 Numpy 中是否有任何內置方式,或者可用的庫可以更快地運行它?

這可能看起來有點神秘,但

A = np.subtract.outer(Img2, Img2)
A = np.abs(A)

應該做你想做的。

下班時我會發布更多解釋(如果我不這樣做,請提醒我。)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM