使用 Python和 Java 计算图像中唯一颜色的数量

使用图像处理有时我们需要计算图像中独特颜色的数量。编程语言提供了多种方法来做到这一点。

使用 Python 计算图像中唯一颜色的数量

Pillow库中的Image.getpixel方法

  1. Pillow从命令行安装库:
pip install Pillow
  1. 计算图像中独特颜色的数量:
12345678910111213141516from PIL import Image

imgPath = 'test.jpg'

img = Image.open(imgPath)
uniqueColors = set()

w, h = img.size
for x in range(w):
    for y in range(h):
        pixel = img.getpixel((x, y))
        uniqueColors.add(pixel)

totalUniqueColors = len(uniqueColors)

print(totalUniqueColors)

使用 Java 计算图像中唯一颜色的数量

BufferedImage.getRGB方法

package app;

import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.HashSet;
import java.util.Set;

public class Main
{
    public static void main(String[] args) throws IOException
    {
        String imgPath = "test.jpg";

        BufferedImage img = ImageIO.read(new File(imgPath));
        Set<Integer> uniqueColors = new HashSet<>();

        int w = img.getWidth();
        int h = img.getHeight();
        for (int x = 0; x < w; x++) {
            for (int y = 0; y < h; y++) {
                int pixel = img.getRGB(x, y);
                uniqueColors.add(pixel);
            }
        }

        int totalUniqueColors = uniqueColors.size();

        System.out.println(totalUniqueColors);
    }
}

版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。

(0)

相关推荐

发表回复

登录后才能评论