在Python中比较矩阵并获取不匹配的位置

时间:2018-06-27 14:50:43

标签: python numpy image-processing matrix

我有两个矩阵A和B,它们的形状完全相同。 我想逐元素比较这些矩阵,并存储所有不匹配的位置。说A:

[[1,2,3],
[4,5,6],
[7,8,9]]

和B:

[[1,2,3],
[3,5,6],
[7,7,9]]

结果将类似于以下列表: lst = [(2,1),(3,2)]

我正在分析一些图片,所以我的矩阵实际上是3d(但是,我认为这不会产生很大的变化)。

一旦有了不匹配的列表,我将重新创建所有不匹配的像素,以查看它们的确切差异。

1 个答案:

答案 0 :(得分:2)

if ($_SERVER['REQUEST_METHOD'] == 'POST'){//&&( isset( $_POST['submit1'] )){ $item = new c_item; $item->$sku = mysqli_real_escape_string($link, $_POST['sku']); $item->$name = mysqli_real_escape_string($link, $_POST['name']); $item->$price = floatval(mysqli_real_escape_string($link, $_POST['price'])); $item->$type = intval(mysqli_real_escape_string($link, $_POST['type'])); echo "sku: ".$item->$sku."<br/>"; echo "name: ".$item->$name."<br/>"; echo "price: ".$item->$price."<br/>"; echo "type: ".$item->$type."<br/>"; }

np.argwhere

输出(数组从0开始索引):

import numpy as np

a = np.array([[1,2,3],[4, 5, 6], [7,8,9]])
b = np.array([[1,2,3],[3, 5, 6], [7,7,9]])

ids = np.argwhere(a!=b) # indexes satisfying the condition

print(ids)