挑战图像处理100问(6)——减色处理

在这里插入图片描述
读取图像,对图像进行减色处理。
Author: Tian YJ
原图如下:

在这里插入图片描述

关于减色处理

我们将图像的值由2563256^3压缩至434^3,即将RGB\text{RGB}的值只取{32,96,160,224}\{32, 96, 160, 224\}。这被称作色彩量化。色彩的值按照下面的方式定义:
val={32(0var<64)96(64var<128)160(128var<192)224(192var<256) \text{val}= \begin{cases} 32& (0 \leq \text{var} < 64)\\ 96& (64\leq \text{var}<128)\\ 160&(128\leq \text{var}<192)\\ 224&(192\leq \text{var}<256) \end{cases}

这个操作就极为简单了!

# -*- coding: utf-8 -*-
"""
Created on Wed Apr  8 12:12:25 2020

@author: Tian YJ
"""

import cv2
import numpy as np

# 减色处理函数
def dicrease_color(img):
	out = img.copy()

	out = out // 64 * 64 + 32

	return out

# 读取图片
path = 'C:/Users/86187/Desktop/image/'


file_in = path + 'cake.jpg' 
file_out = path + 'dicrease_color.jpg' 
img = cv2.imread(file_in)

# 调用函数进行减色处理
out = dicrease_color(img)

# 保存图片
cv2.imwrite(file_out, out)
cv2.imshow("result", out)
cv2.waitKey(0)
cv2.destroyAllWindows()

原图 减色处理
在这里插入图片描述 在这里插入图片描述
posted @ 2020-04-08 20:54  田纳尔多  阅读(38)  评论(0编辑  收藏  举报