我需要找到使用impixel()
在对象检测中获得的内部点的像素值。我使用的代码与link
如何获得关于图像尺寸的内点的x,y坐标。(图像的左上角被视为0
行,0
col)以便我可以使用坐标以找到它们各自的像素值。我无法在Matlab中找到与C++
中的KeyPoint对象相同的任何解决方案,它可以轻松地提供坐标值。
答案 0 :(得分:0)
此处您不需要impixel
。 impixel
可让您从图中显示的图像中获取像素值,这不是您要执行的操作。
在您使用的示例中,inlierBoxPoints
和inlierScenePoints
是SURFPoints对象。您可以将点的(x,y)位置设为inlierBoxPoints.Location
。然后你可以得到第i个点的像素值,如下所示:
loc = round(inlierBoxPoints.Location(i, :));
pixVal = boxImage(loc(2), loc(1), :);
请记住,在MATLAB中,图像被索引为(row,col),左上角像素为(1,1),而不是(0,0)。您必须舍入坐标,因为以子像素精度检测点。