颜色反转代码
时间: 2023-07-02 11:08:43 浏览: 42
颜色反转可以通过将每个像素的 RGB 值分别取反来实现。具体实现代码如下:
```python
from PIL import Image
# 打开图片
img = Image.open("example.jpg")
# 获取图片尺寸
width, height = img.size
# 生成新图片
new_img = Image.new("RGB", (width, height))
# 颜色反转
for x in range(width):
for y in range(height):
r, g, b = img.getpixel((x, y))
new_r, new_g, new_b = 255 - r, 255 - g, 255 - b
new_img.putpixel((x, y), (new_r, new_g, new_b))
# 保存新图片
new_img.save("example_reversed.jpg")
```
这里使用了 Python 的 Pillow 库来处理图片。你需要安装 Pillow 库才能运行上面的代码。
相关问题
matlab图像批量颜色反转代码
以下是一个简单的MATLAB图像批量颜色反转代码示例:
```matlab
folder = 'path/to/folder'; % 图像文件夹路径
file_list = dir(fullfile(folder, '*.jpg')); % 获取所有jpg文件
for i = 1:length(file_list)
filename = fullfile(folder, file_list(i).name); % 获取文件名
img = imread(filename); % 读取图像
img = imcomplement(img); % 颜色反转
imwrite(img, filename); % 保存处理后的图像
end
```
以上代码中,`imcomplement`函数用于颜色反转,处理后的图像将覆盖原图像。你也可以将处理后的图像保存到另一个文件夹中,以免覆盖原图像。
注意,该代码仅适用于灰度图像或RGB图像。如果图像是索引图像,可以使用`ind2rgb`函数将其转换为RGB图像再进行颜色反转。
matlab颜色反转
将图像的每个像素的颜色值减去255即可实现颜色反转。以下是一个示例代码:
```
img = imread('image.jpg'); % 读取图像
img_reverse = 255 - img; % 颜色反转
imshow(img_reverse); % 显示反转后的图像
```
注意,如果图像是灰度图像,那么每个像素只有一个颜色值,需要将其直接减去255即可。如果图像是彩色图像,那么每个像素有三个颜色值(红、绿、蓝),需要对每个颜色值分别进行操作。可以使用以下代码实现:
```
img = imread('image.jpg'); % 读取图像
img_reverse = 255 - img; % 颜色反转
img_reverse = uint8(img_reverse); % 转换为8位无符号整数
imshow(img_reverse); % 显示反转后的图像
```