【发布时间】:2020-11-15 02:15:42
【问题描述】:
如何获取对角线上的大矩形的坐标。
例如黄色 [0,615]、[615,1438]、[1438,1526]
import numpy as np;
import pandas as pd
from sklearn.metrics.pairwise import cosine_similarity
df = pd.DataFrame(array) # array is image numpy
df.shape #(1526, 360)
s = cosine_similarity(df) #(1526, 1526)
plt.matshow(s)
我尝试在第一行获取峰值,但有噪声信息
speak = 1-s[0]
peaks, _ = find_peaks(speak, distance=160, height=0.1)
print(peaks, len(peaks))
np.diff(peaks)
plt.plot(speak)
plt.plot(peaks, speak[peaks], "x")
plt.show()
更新,添加另一个例子 并上传到colab完整脚本https://colab.research.google.com/drive/1hyDIDs-QjLjD2mVIX4nNOXOcvCZY4O2c?usp=sharing
【问题讨论】:
-
s的形状是什么?
-
@RahulVishwakarma (1526,1526)
-
提供一个 s 样本来处理。或提供代码来生成它
-
@RahulVishwakarma 将数据帧上传到 csv dropmefiles.com/CxWey
标签: python pandas numpy cosine-similarity distance-matrix