rmagick を使用して、ビットマップの各ピクセルを取得しています。色の値を深さ 8 (256 色) で取得する必要がありますが、残念ながら、pixel.[color] (pixel. red など) を使用すると、深さ 16 で取得しています。 image.quantize(256) を使用しました。
コードは次のとおりです。
require 'RMagick'
include Magick
image = ImageList.new("image.bmp")
image3 = image.quantize(number_colors = 256)
puts image3.number_colors
image2 = Image.new(image.columns, image.rows)
(0..image.columns).each do |x|
(0..image.rows).each do |y|
pixel = image3.pixel_color(x, y)
print pixel.red
print ", "
print pixel.green
print ", "
print pixel.blue
print "\n"
image2.pixel_color(x, y, pixel)
end
end
0..255 の値だけを取得するにはどうすればよいですか?