【发布时间】:2021-07-22 12:46:09
【问题描述】:
我想找到像这样生成的给定一维数组的所有峰值点:
vertical_projection = np.sum(projCopy, axis=0)(此数组包含二值图像每列黑色像素的总和。)
当我打印这个数组时,我得到了,
[1213 1335 1335 1335 1335 1335 1335 1335 1335 1335 1335 1335 1335 1335
960 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 957 958 958 958 959 960 974 1072 1073
1072 1007 1008 1007 998 998 997 996 996 996 995 907 741 706
0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 755 1331 1332]
所以我想打印峰值点的所有数组索引,而不提供任何阈值来计算峰值点。
【问题讨论】:
-
该数组的预期输出是什么?
-
@DanielF 它应该是值 1335(来自第一组非零值)、1073(来自第二组非零值)、1332(来自最后一组 755,1331)的数组索引,1332)
-
您提到了非零值。你的意思是你只考虑每段非零值的一个“峰值”吗?
-
@YvesDaoust 是的
-
如果出现平局,你应该返回什么?
标签: python arrays numpy image-processing