规范化图像的坐标

时间:2018-01-30 15:04:23

标签: python-2.7 image-processing normalization

我正在尝试用Python创建一个对象检测程序。输出应该是被分析图片的文件名,加上"标准化坐标"对象中心。

每张图片应按如下方式标准化:

左上角=(0,0),左下角=(0,1),右上角=(1,0),右下角=(1,1)

有关如何规范化每张图片坐标的建议或建议?

1 个答案:

答案 0 :(得分:0)

这个简单的功能可以完成工作:

def normalize_coordinates(row_i, col_j, img):
    num_rows, num_cols = img.shape[:2]
    x = col_j/(num_cols - 1.)
    y = row_i/(num_rows - 1.)
    return x, y

<强>演示

from skimage import io
from numpy import random

random.seed(42)
img = io.imread('https://i.stack.imgur.com/94l13.jpg')
row_i = random.randint(0, img.shape[0]) 
col_j = random.randint(0, img.shape[1]) 
x, y = normalize_coordinates(row_i, col_j, img)

print 'row = %d, column = %d  >>>  x = %.2f, y = %.2f' % (row_i, col_j, x, y) 

输出:

row = 102, column = 435  >>>  x = 0.71, y = 0.25