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

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

在这里插入图片描述

关于减色处理

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

原图 减色处理
在这里插入图片描述 在这里插入图片描述
原文地址:https://www.cnblogs.com/Jack-Tim-TYJ/p/12831922.html