python类COLOR_RGB2LAB的实例源码

utility.py 文件源码 项目:AlphaLogo 作者: gigaflw 项目源码 文件源码 阅读 30 收藏 0 点赞 0 评论 0
def lab_reduce_colors(colors, weights,  threshold=30, return_rgb=True):
    """
    Reduce colors by L*a*b* space.
    """
    _colors = np.array([colors], dtype=np.uint8)  # cv2.cvtColor only accept 2d array
    lab_colors = cv2.cvtColor(_colors, cv2.COLOR_RGB2LAB)[0].astype(np.double)

    inds = []

    for i, color in enumerate(lab_colors):
        dist = np.linalg.norm(hsv_colors_xyz[inds] - color, axis=1)
        if not dist.size or dist.min() > threshold:
            inds.append(i)

    if return_rgb:
        ret = colors[inds]
    else:
        ret = lab_colors[inds]

    return ret
mask_GMM.py 文件源码 项目:intel-cervical-cancer 作者: wangg12 项目源码 文件源码 阅读 24 收藏 0 点赞 0 评论 0
def Ra_space(img, Ra_ratio, a_threshold):
    '''
    Extract the Ra features by converting RGB to LAB space.
    The higher is a value, the "redder" is the pixel.
    '''
    imgLab = cv2.cvtColor(img, cv2.COLOR_RGB2LAB);
    w = img.shape[0]
    h = img.shape[1]
    Ra = np.zeros((w*h, 2))
    for i in range(w):
        for j in range(h):
            R = math.sqrt((w/2-i)*(w/2-i) + (h/2-j)*(h/2-j))
            Ra[i*h+j, 0] = R
            Ra[i*h+j, 1] = min(imgLab[i][j][1], a_threshold)

    Ra[:,0] /= max(Ra[:,0])
    Ra[:,0] *= Ra_ratio
    Ra[:,1] /= max(Ra[:,1])

    return Ra
segmentation_GMM.py 文件源码 项目:intel-cervical-cancer 作者: wangg12 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def Ra_space(img, Ra_ratio, a_threshold):
    '''
    Extract the Ra features by converting RGB to LAB space.
    The higher is a value, the "redder" is the pixel.
    '''
    imgLab = cv2.cvtColor(img, cv2.COLOR_RGB2LAB);
    w = img.shape[0]
    h = img.shape[1]
    Ra = np.zeros((w*h, 2))
    for i in range(w):
        for j in range(h):
            R = math.sqrt((w/2-i)*(w/2-i) + (h/2-j)*(h/2-j))
            Ra[i*h+j, 0] = R
            Ra[i*h+j, 1] = min(imgLab[i][j][1], a_threshold)

    Ra[:,0] /= max(Ra[:,0])
    Ra[:,0] *= Ra_ratio
    Ra[:,1] /= max(Ra[:,1])

    return Ra
api.py 文件源码 项目:histonets-cv 作者: sul-cidr 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def color_reduction(image, n_colors, method='kmeans', palette=None):
    """Reduce the number of colors in image to n_colors using method"""
    method = method.lower()
    if method not in ('kmeans', 'linear', 'max', 'median', 'octree'):
        method = 'kmeans'
    if n_colors < 2:
        n_colors = 2
    elif n_colors > 128:
        n_colors = 128
    if method == 'kmeans':
        n_clusters = n_colors
        h, w = image.shape[:2]
        img = cv2.cvtColor(image, cv2.COLOR_BGR2LAB)
        img = img.reshape((-1, 3))  # -1 -> img.shape[0] * img.shape[1]
        centers, labels = kmeans(img, n_clusters)
        if palette is not None:
            # palette comes in RGB
            centers = cv2.cvtColor(np.array([palette]), cv2.COLOR_RGB2LAB)[0]
        quant = centers[labels].reshape((h, w, 3))
        output = cv2.cvtColor(quant, cv2.COLOR_LAB2BGR)
    else:
        img = PIL.Image.fromarray(image[:, :, ::-1], mode='RGB')
        quant = img.quantize(colors=n_colors,
                             method=get_quantize_method(method))
        if palette is not None:
            palette = np.array(palette, dtype=np.uint8)
            quant.putpalette(palette.flatten())
        output = np.array(quant.convert('RGB'), dtype=np.uint8)[:, :, ::-1]
    return output
MR.py 文件源码 项目:RFCN 作者: zengxianyu 项目源码 文件源码 阅读 27 收藏 0 点赞 0 评论 0
def __MR_readimg(self,img):
        if isinstance(img,str): # a image path
            img = cv2.imread(img,cv2.CV_LOAD_IMAGE_COLOR)
            # img = cv2.cvtColor(img,cv2.COLOR_BGR2RGB).astype(float)/255
        # img = cv2.cvtColor(img,cv2.COLOR_BGR2LAB).astype(float)/255
        img = cv2.cvtColor(img,cv2.COLOR_RGB2LAB).astype(float)/255
        # h = 100
        # w = int(float(h)/float(img.shape[0])*float(img.shape[1]))
        return img #cv2.resize(img,(w,h))


问题


面经


文章

微信
公众号

扫码关注公众号