(pt, M)
return numpy.asarray([pt2[0] / pt2[2], pt2[1] / pt2[2]])
Transform point in 2D coordinates
    :param pt: point coordinates
    :param M: transformation matrix
    :return: transformed point
Transform point in 2D coordinates
    :param pt: point coordinates
    :param M: transformation matrix
    :return: transformed point
Transform point in 2D coordinates : param pt : point coordinates : param M : transformation matrix : return : transformed point
def transformPoint2D(pt, M):
    """
    Transform point in 2D coordinates
    :param pt: point coordinates
    :param M: transformation matrix
    :return: transformed point
    """
    pt2 = numpy.dot(numpy.asarray(M).reshape((3, 3)), numpy.asarray([pt[0], pt[1], 1]))
    return numpy.asarray([pt2[0] / pt2[2], pt2[1] / pt2[2]])
def transformPoint2D ( pt , M ) : pt2 = numpy . dot ( numpy . asarray ( M ) . reshape ( ( 3 , 3 ) ) , numpy . asarray ( [ pt [ 0 ] , pt [ 1 ] , 1 ] ) ) return numpy . asarray ( [ pt2 [ 0 ] / pt2 [ 2 ] , pt2 [ 1 ] / pt2 [ 2 ] ] )