图像的初识

发布时间:2024年01月14日

一、图像的数组表示

RGB能够构成人眼所能识别的所有颜色。

二、图像的变换

Example:

img.shape
Out[329]: (512, 768, 3)
img.dtype
Out[330]: dtype('uint8')
#补值变换
shift_temp_img = [255,255,255] - img
shift_img = Image.fromarray(shift_temp_img.astype('uint8'))
shift_img.save("D:/shift1.jpg")

img = np.array(Image.open("practice_dataset/train/ants_image/0013035.jpg").convert('L'))
b = 255 - img
shift_img = Image.fromarray(b.astype('uint8'))
shift_img.save("D:/shift2.jpg")

img = np.array(Image.open("practice_dataset/train/ants_image/0013035.jpg").convert('L'))
#区间变换
c =  (200/255) * img + 55
shift_img = Image.fromarray(c.astype('uint8'))
shift_img.save("D:/shift3.jpg")

img = np.array(Image.open("practice_dataset/train/ants_image/0013035.jpg").convert('L'))
d =  255 * (img/255)**2
shift_img = Image.fromarray(d.astype('uint8'))
shift_img.save("D:/shift4.jpg")

注:

uint8?是一个数据类型,表示无符号 8 位整数(unsigned 8-bit integer)。在许多编程语言和图像处理库中,包括 Python 中的 NumPy 和 PIL(Pillow),uint8?常用于表示图像像素的颜色值。

在 NumPy 中,uint8?是一种数据类型,用于表示范围在 0 到 255 之间的整数。它占用 8 位(1 字节)内存空间。可以使用?np.uint8?或?np.dtype('uint8')?来表示?uint8?数据类型。

在 PIL(Pillow)中,uint8?是默认的像素数据类型,用于表示图像的每个像素的颜色值。PIL 中的图像对象可以通过?Image.mode?属性来查看图像的模式,通常会显示为?"L"(灰度图像)或?"RGB"(真彩色图像)。对于?"L"?模式的图像,每个像素的值是一个?uint8?类型的灰度值(0 到 255);对于?"RGB"?模式的图像,每个像素的值是一个长度为 3 的?uint8?类型的元组,表示红、绿、蓝三个通道的颜色值。

文章来源:https://blog.csdn.net/qq_55414382/article/details/133278338
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。