python - 将映射数组应用于numpy数组中的所有元素的快速方法?
问题描述
现在,我的代码基本上看起来像:
for x in range(img.shape[0]):
for y in range(image.shape[1]):
output[x,y] = map[ input[x,y] ]
其中output
和都是 numpy 数组(映射大小为 256,都是 uint8 类型)input
。map
这有效,但速度很慢。像这样的循环应该在 C 中。这就是 numpy 的用途。
是否有一个 numpy 函数(或 cv2 函数,我已经在导入它)可以做到这一点?
解决方案
怎么样?
output = map[input]
推荐阅读
- msbuild - 如何利用 msbuild 15 NuGet 功能将创建的包推送到我自己的 NuGet 存储库?
- json - 使用 JacksonMapper 时添加多余的 @JsonProperty 是否是一种好习惯
- javascript - 不能在反应中使用 ref
- python-3.x - 在python中解析日期和时间
- html - A11y 错误:链接没有可识别的名称
- rust - 为什么我得到“必须使用的未使用结果......结果可能是一个 Err 变体,应该被处理”,即使我正在处理它?
- python - 如何获取函数名、函数参数
- java - 如何在 OpenTest 中开始新的测试会话?
- sql - 如果给定位置 ID,是否可以检索部门数量和在该部门工作的员工数量
- javascript - 我的 console.log 在错误的地方,但我不明白为什么