how to apply a specific colormap?

Questions and postings pertaining to the usage of ImageMagick regardless of the interface. This includes the command-line utilities, as well as the C and C++ APIs. Usage questions are like "How do I use ImageMagick to create drop shadows?".
Post Reply
steej

how to apply a specific colormap?

Post by steej »

how can I apply to my bitmap image this colormap?

Code: Select all

  Colormap: 256
         0: (  0,  0,  0) #000000 black
         1: (128,  0,  0) #800000 maroon
         2: (  0,128,  0) #008000 green
         3: (128,128,  0) #808000 olive
         4: (  0,  0,128) #000080 navy
         5: (128,  0,128) #800080 purple
         6: (  0,128,128) #008080 teal
         7: (192,192,192) #C0C0C0 silver
         8: (192,220,192) #C0DCC0 rgb(192,220,192)
         9: (166,202,240) #A6CAF0 rgb(166,202,240)
        10: ( 64, 32,  0) #402000 rgb(64,32,0)
        11: ( 96, 32,  0) #602000 rgb(96,32,0)
        12: (128, 32,  0) #802000 rgb(128,32,0)
        13: (160, 32,  0) #A02000 rgb(160,32,0)
        14: (192, 32,  0) #C02000 rgb(192,32,0)
        15: (224, 32,  0) #E02000 rgb(224,32,0)
        16: (  0, 64,  0) #004000 rgb(0,64,0)
        17: ( 32, 64,  0) #204000 rgb(32,64,0)
        18: ( 64, 64,  0) #404000 rgb(64,64,0)
        19: ( 96, 64,  0) #604000 rgb(96,64,0)
        20: (128, 64,  0) #804000 rgb(128,64,0)
        21: (160, 64,  0) #A04000 rgb(160,64,0)
        22: (192, 64,  0) #C04000 rgb(192,64,0)
        23: (224, 64,  0) #E04000 rgb(224,64,0)
        24: (  0, 96,  0) #006000 rgb(0,96,0)
        25: ( 32, 96,  0) #206000 rgb(32,96,0)
        26: ( 64, 96,  0) #406000 rgb(64,96,0)
        27: ( 96, 96,  0) #606000 rgb(96,96,0)
        28: (128, 96,  0) #806000 rgb(128,96,0)
        29: (160, 96,  0) #A06000 rgb(160,96,0)
        30: (192, 96,  0) #C06000 rgb(192,96,0)
        31: (224, 96,  0) #E06000 rgb(224,96,0)
        32: (  0,128,  0) #008000 green
        33: ( 32,128,  0) #208000 rgb(32,128,0)
        34: ( 64,128,  0) #408000 rgb(64,128,0)
        35: ( 96,128,  0) #608000 rgb(96,128,0)
        36: (128,128,  0) #808000 olive
        37: (160,128,  0) #A08000 rgb(160,128,0)
        38: (192,128,  0) #C08000 rgb(192,128,0)
        39: (224,128,  0) #E08000 rgb(224,128,0)
        40: (  0,160,  0) #00A000 rgb(0,160,0)
        41: ( 32,160,  0) #20A000 rgb(32,160,0)
        42: ( 64,160,  0) #40A000 rgb(64,160,0)
        43: ( 96,160,  0) #60A000 rgb(96,160,0)
        44: (128,160,  0) #80A000 rgb(128,160,0)
        45: (160,160,  0) #A0A000 rgb(160,160,0)
        46: (192,160,  0) #C0A000 rgb(192,160,0)
        47: (224,160,  0) #E0A000 rgb(224,160,0)
        48: (  0,192,  0) #00C000 rgb(0,192,0)
        49: ( 32,192,  0) #20C000 rgb(32,192,0)
        50: ( 64,192,  0) #40C000 rgb(64,192,0)
        51: ( 96,192,  0) #60C000 rgb(96,192,0)
        52: (128,192,  0) #80C000 rgb(128,192,0)
        53: (160,192,  0) #A0C000 rgb(160,192,0)
        54: (192,192,  0) #C0C000 rgb(192,192,0)
        55: (224,192,  0) #E0C000 rgb(224,192,0)
        56: (  0,224,  0) #00E000 rgb(0,224,0)
        57: ( 32,224,  0) #20E000 rgb(32,224,0)
        58: ( 64,224,  0) #40E000 rgb(64,224,0)
        59: ( 96,224,  0) #60E000 rgb(96,224,0)
        60: (128,224,  0) #80E000 rgb(128,224,0)
        61: (160,224,  0) #A0E000 rgb(160,224,0)
        62: (192,224,  0) #C0E000 rgb(192,224,0)
        63: (224,224,  0) #E0E000 rgb(224,224,0)
        64: (  0,  0, 64) #000040 rgb(0,0,64)
        65: ( 32,  0, 64) #200040 rgb(32,0,64)
        66: ( 64,  0, 64) #400040 rgb(64,0,64)
        67: ( 96,  0, 64) #600040 rgb(96,0,64)
        68: (128,  0, 64) #800040 rgb(128,0,64)
        69: (160,  0, 64) #A00040 rgb(160,0,64)
        70: (192,  0, 64) #C00040 rgb(192,0,64)
        71: (224,  0, 64) #E00040 rgb(224,0,64)
        72: (  0, 32, 64) #002040 rgb(0,32,64)
        73: ( 32, 32, 64) #202040 rgb(32,32,64)
        74: ( 64, 32, 64) #402040 rgb(64,32,64)
        75: ( 96, 32, 64) #602040 rgb(96,32,64)
        76: (128, 32, 64) #802040 rgb(128,32,64)
        77: (160, 32, 64) #A02040 rgb(160,32,64)
        78: (192, 32, 64) #C02040 rgb(192,32,64)
        79: (224, 32, 64) #E02040 rgb(224,32,64)
        80: (  0, 64, 64) #004040 rgb(0,64,64)
        81: ( 32, 64, 64) #204040 rgb(32,64,64)
        82: ( 64, 64, 64) #404040 grey25
        83: ( 96, 64, 64) #604040 rgb(96,64,64)
        84: (128, 64, 64) #804040 rgb(128,64,64)
        85: (160, 64, 64) #A04040 rgb(160,64,64)
        86: (192, 64, 64) #C04040 rgb(192,64,64)
        87: (224, 64, 64) #E04040 rgb(224,64,64)
        88: (  0, 96, 64) #006040 rgb(0,96,64)
        89: ( 32, 96, 64) #206040 rgb(32,96,64)
        90: ( 64, 96, 64) #406040 rgb(64,96,64)
        91: ( 96, 96, 64) #606040 rgb(96,96,64)
        92: (128, 96, 64) #806040 rgb(128,96,64)
        93: (160, 96, 64) #A06040 rgb(160,96,64)
        94: (192, 96, 64) #C06040 rgb(192,96,64)
        95: (224, 96, 64) #E06040 rgb(224,96,64)
        96: (  0,128, 64) #008040 rgb(0,128,64)
        97: ( 32,128, 64) #208040 rgb(32,128,64)
        98: ( 64,128, 64) #408040 rgb(64,128,64)
        99: ( 96,128, 64) #608040 rgb(96,128,64)
       100: (128,128, 64) #808040 rgb(128,128,64)
       101: (160,128, 64) #A08040 rgb(160,128,64)
       102: (192,128, 64) #C08040 rgb(192,128,64)
       103: (224,128, 64) #E08040 rgb(224,128,64)
       104: (  0,160, 64) #00A040 rgb(0,160,64)
       105: ( 32,160, 64) #20A040 rgb(32,160,64)
       106: ( 64,160, 64) #40A040 rgb(64,160,64)
       107: ( 96,160, 64) #60A040 rgb(96,160,64)
       108: (128,160, 64) #80A040 rgb(128,160,64)
       109: (160,160, 64) #A0A040 rgb(160,160,64)
       110: (192,160, 64) #C0A040 rgb(192,160,64)
       111: (224,160, 64) #E0A040 rgb(224,160,64)
       112: (  0,192, 64) #00C040 rgb(0,192,64)
       113: ( 32,192, 64) #20C040 rgb(32,192,64)
       114: ( 64,192, 64) #40C040 rgb(64,192,64)
       115: ( 96,192, 64) #60C040 rgb(96,192,64)
       116: (128,192, 64) #80C040 rgb(128,192,64)
       117: (160,192, 64) #A0C040 rgb(160,192,64)
       118: (192,192, 64) #C0C040 rgb(192,192,64)
       119: (224,192, 64) #E0C040 rgb(224,192,64)
       120: (  0,224, 64) #00E040 rgb(0,224,64)
       121: ( 32,224, 64) #20E040 rgb(32,224,64)
       122: ( 64,224, 64) #40E040 rgb(64,224,64)
       123: ( 96,224, 64) #60E040 rgb(96,224,64)
       124: (128,224, 64) #80E040 rgb(128,224,64)
       125: (160,224, 64) #A0E040 rgb(160,224,64)
       126: (192,224, 64) #C0E040 rgb(192,224,64)
       127: (224,224, 64) #E0E040 rgb(224,224,64)
       128: (  0,  0,128) #000080 navy
       129: ( 32,  0,128) #200080 rgb(32,0,128)
       130: ( 64,  0,128) #400080 rgb(64,0,128)
       131: ( 96,  0,128) #600080 rgb(96,0,128)
       132: (128,  0,128) #800080 purple
       133: (160,  0,128) #A00080 rgb(160,0,128)
       134: (192,  0,128) #C00080 rgb(192,0,128)
       135: (224,  0,128) #E00080 rgb(224,0,128)
       136: (  0, 32,128) #002080 rgb(0,32,128)
       137: ( 32, 32,128) #202080 rgb(32,32,128)
       138: ( 64, 32,128) #402080 rgb(64,32,128)
       139: ( 96, 32,128) #602080 rgb(96,32,128)
       140: (128, 32,128) #802080 rgb(128,32,128)
       141: (160, 32,128) #A02080 rgb(160,32,128)
       142: (192, 32,128) #C02080 rgb(192,32,128)
       143: (224, 32,128) #E02080 rgb(224,32,128)
       144: (  0, 64,128) #004080 rgb(0,64,128)
       145: ( 32, 64,128) #204080 rgb(32,64,128)
       146: ( 64, 64,128) #404080 rgb(64,64,128)
       147: ( 96, 64,128) #604080 rgb(96,64,128)
       148: (128, 64,128) #804080 rgb(128,64,128)
       149: (160, 64,128) #A04080 rgb(160,64,128)
       150: (192, 64,128) #C04080 rgb(192,64,128)
       151: (224, 64,128) #E04080 rgb(224,64,128)
       152: (  0, 96,128) #006080 rgb(0,96,128)
       153: ( 32, 96,128) #206080 rgb(32,96,128)
       154: ( 64, 96,128) #406080 rgb(64,96,128)
       155: ( 96, 96,128) #606080 rgb(96,96,128)
       156: (128, 96,128) #806080 rgb(128,96,128)
       157: (160, 96,128) #A06080 rgb(160,96,128)
       158: (192, 96,128) #C06080 rgb(192,96,128)
       159: (224, 96,128) #E06080 rgb(224,96,128)
       160: (  0,128,128) #008080 teal
       161: ( 32,128,128) #208080 rgb(32,128,128)
       162: ( 64,128,128) #408080 rgb(64,128,128)
       163: ( 96,128,128) #608080 rgb(96,128,128)
       164: (128,128,128) #808080 fractal
       165: (160,128,128) #A08080 rgb(160,128,128)
       166: (192,128,128) #C08080 rgb(192,128,128)
       167: (224,128,128) #E08080 rgb(224,128,128)
       168: (  0,160,128) #00A080 rgb(0,160,128)
       169: ( 32,160,128) #20A080 rgb(32,160,128)
       170: ( 64,160,128) #40A080 rgb(64,160,128)
       171: ( 96,160,128) #60A080 rgb(96,160,128)
       172: (128,160,128) #80A080 rgb(128,160,128)
       173: (160,160,128) #A0A080 rgb(160,160,128)
       174: (192,160,128) #C0A080 rgb(192,160,128)
       175: (224,160,128) #E0A080 rgb(224,160,128)
       176: (  0,192,128) #00C080 rgb(0,192,128)
       177: ( 32,192,128) #20C080 rgb(32,192,128)
       178: ( 64,192,128) #40C080 rgb(64,192,128)
       179: ( 96,192,128) #60C080 rgb(96,192,128)
       180: (128,192,128) #80C080 rgb(128,192,128)
       181: (160,192,128) #A0C080 rgb(160,192,128)
       182: (192,192,128) #C0C080 rgb(192,192,128)
       183: (224,192,128) #E0C080 rgb(224,192,128)
       184: (  0,224,128) #00E080 rgb(0,224,128)
       185: ( 32,224,128) #20E080 rgb(32,224,128)
       186: ( 64,224,128) #40E080 rgb(64,224,128)
       187: ( 96,224,128) #60E080 rgb(96,224,128)
       188: (128,224,128) #80E080 rgb(128,224,128)
       189: (160,224,128) #A0E080 rgb(160,224,128)
       190: (192,224,128) #C0E080 rgb(192,224,128)
       191: (224,224,128) #E0E080 rgb(224,224,128)
       192: (  0,  0,192) #0000C0 rgb(0,0,192)
       193: ( 32,  0,192) #2000C0 rgb(32,0,192)
       194: ( 64,  0,192) #4000C0 rgb(64,0,192)
       195: ( 96,  0,192) #6000C0 rgb(96,0,192)
       196: (128,  0,192) #8000C0 rgb(128,0,192)
       197: (160,  0,192) #A000C0 rgb(160,0,192)
       198: (192,  0,192) #C000C0 rgb(192,0,192)
       199: (224,  0,192) #E000C0 rgb(224,0,192)
       200: (  0, 32,192) #0020C0 rgb(0,32,192)
       201: ( 32, 32,192) #2020C0 rgb(32,32,192)
       202: ( 64, 32,192) #4020C0 rgb(64,32,192)
       203: ( 96, 32,192) #6020C0 rgb(96,32,192)
       204: (128, 32,192) #8020C0 rgb(128,32,192)
       205: (160, 32,192) #A020C0 rgb(160,32,192)
       206: (192, 32,192) #C020C0 rgb(192,32,192)
       207: (224, 32,192) #E020C0 rgb(224,32,192)
       208: (  0, 64,192) #0040C0 rgb(0,64,192)
       209: ( 32, 64,192) #2040C0 rgb(32,64,192)
       210: ( 64, 64,192) #4040C0 rgb(64,64,192)
       211: ( 96, 64,192) #6040C0 rgb(96,64,192)
       212: (128, 64,192) #8040C0 rgb(128,64,192)
       213: (160, 64,192) #A040C0 rgb(160,64,192)
       214: (192, 64,192) #C040C0 rgb(192,64,192)
       215: (224, 64,192) #E040C0 rgb(224,64,192)
       216: (  0, 96,192) #0060C0 rgb(0,96,192)
       217: ( 32, 96,192) #2060C0 rgb(32,96,192)
       218: ( 64, 96,192) #4060C0 rgb(64,96,192)
       219: ( 96, 96,192) #6060C0 rgb(96,96,192)
       220: (128, 96,192) #8060C0 rgb(128,96,192)
       221: (160, 96,192) #A060C0 rgb(160,96,192)
       222: (192, 96,192) #C060C0 rgb(192,96,192)
       223: (224, 96,192) #E060C0 rgb(224,96,192)
       224: (  0,128,192) #0080C0 rgb(0,128,192)
       225: ( 32,128,192) #2080C0 rgb(32,128,192)
       226: ( 64,128,192) #4080C0 rgb(64,128,192)
       227: ( 96,128,192) #6080C0 rgb(96,128,192)
       228: (128,128,192) #8080C0 rgb(128,128,192)
       229: (160,128,192) #A080C0 rgb(160,128,192)
       230: (192,128,192) #C080C0 rgb(192,128,192)
       231: (224,128,192) #E080C0 rgb(224,128,192)
       232: (  0,160,192) #00A0C0 rgb(0,160,192)
       233: ( 32,160,192) #20A0C0 rgb(32,160,192)
       234: ( 64,160,192) #40A0C0 rgb(64,160,192)
       235: ( 96,160,192) #60A0C0 rgb(96,160,192)
       236: (128,160,192) #80A0C0 rgb(128,160,192)
       237: (160,160,192) #A0A0C0 rgb(160,160,192)
       238: (192,160,192) #C0A0C0 rgb(192,160,192)
       239: (224,160,192) #E0A0C0 rgb(224,160,192)
       240: (  0,192,192) #00C0C0 rgb(0,192,192)
       241: ( 32,192,192) #20C0C0 rgb(32,192,192)
       242: ( 64,192,192) #40C0C0 rgb(64,192,192)
       243: ( 96,192,192) #60C0C0 rgb(96,192,192)
       244: (128,192,192) #80C0C0 rgb(128,192,192)
       245: (160,192,192) #A0C0C0 rgb(160,192,192)
       246: (255,251,240) #FFFBF0 rgb(255,251,240)
       247: (160,160,164) #A0A0A4 rgb(160,160,164)
       248: (128,128,128) #808080 fractal
       249: (255,  0,  0) #FF0000 red
       250: (  0,255,  0) #00FF00 lime
       251: (255,255,  0) #FFFF00 yellow
       252: (  0,  0,255) #0000FF blue
       253: (255,  0,255) #FF00FF magenta
       254: (  0,255,255) #00FFFF cyan
       255: (255,255,255) #FFFFFF white
thank you :)
User avatar
fmw42
Posts: 25562
Joined: 2007-07-02T17:14:51-07:00
Authentication code: 1152
Location: Sunnyvale, California, USA

Re: how to apply a specific colormap?

Post by fmw42 »

convert your colormap into an image, one block (any size) of pixels for each color, then use -remap to apply it to your image.

see http://www.imagemagick.org/script/comma ... .php#remap and http://www.imagemagick.org/Usage/quantize/#web_safe (but use your image rather than the netscape one and use -remap rather than -map, actually both are the same)


Here is how I generated the CSS 140 color palette


CSS color palette 140 colors

i=0
convert -size 10x10 xc:black csspalette1.png
colors="rgb(240,248,255) rgb(250,235,215) rgb(0,255,255) rgb(127,255,212) rgb(240,255,255) rgb(245,245,220) rgb(255,228,196) rgb(0,0,0) rgb(255,235,205) rgb(0,0,255) rgb(138,43,226) rgb(165,42,42) rgb(222,184,135) rgb(95,158,160) rgb(127,255,0) rgb(210,105,30) rgb(255,127,80) rgb(100,149,237) rgb(255,248,220) rgb(220,20,60) rgb(0,255,255) rgb(0,0,139) rgb(0,139,139) rgb(184,134,11) rgb(169,169,169) rgb(0,100,0) rgb(189,183,107) rgb(139,0,139) rgb(85,107,47) rgb(255,140,0) rgb(153,50,204) rgb(139,0,0) rgb(233,150,122) rgb(143,188,143) rgb(72,61,139) rgb(47,79,79) rgb(0,206,209) rgb(148,0,211) rgb(255,20,147) rgb(0,191,255) rgb(105,105,105) rgb(30,144,255) rgb(178,34,34) rgb(255,250,240) rgb(34,139,34) rgb(255,0,255) rgb(220,220,220) rgb(248,248,255) rgb(255,215,0) rgb(218,165,32) rgb(127,127,127) rgb(0,127,0) rgb(173,255,47) rgb(240,255,240) rgb(255,105,180) rgb(205,92,92) rgb(75,0,130) rgb(255,255,240) rgb(240,230,140) rgb(230,230,250) rgb(255,240,245) rgb(124,252,0) rgb(255,250,205) rgb(173,216,230) rgb(240,128,128) rgb(224,255,255) rgb(250,250,210) rgb(144,238,144) rgb(211,211,211) rgb(255,182,193) rgb(255,160,122) rgb(32,178,170) rgb(135,206,250) rgb(119,136,153) rgb(176,196,222) rgb(255,255,224) rgb(0,255,0) rgb(50,205,50) rgb(250,240,230) rgb(255,0,255) rgb(127,0,0) rgb(102,205,170) rgb(0,0,205) rgb(186,85,211) rgb(147,112,219) rgb(60,179,113) rgb(123,104,238) rgb(0,250,154) rgb(72,209,204) rgb(199,21,133) rgb(25,25,112) rgb(245,255,250) rgb(255,228,225) rgb(255,228,181) rgb(255,222,173) rgb(0,0,128) rgb(253,245,230) rgb(128,128,0) rgb(107,142,35) rgb(255,165,0) rgb(255,69,0) rgb(218,112,214) rgb(238,232,170) rgb(152,251,152) rgb(175,238,238) rgb(219,112,147) rgb(255,239,213) rgb(255,218,185) rgb(205,133,63) rgb(255,192,203) rgb(221,160,221) rgb(176,224,230) rgb(127,0,127) rgb(255,0,0) rgb(188,143,143) rgb(65,105,225) rgb(139,69,19) rgb(250,128,114) rgb(244,164,96) rgb(46,139,87) rgb(255,245,238) rgb(160,82,45) rgb(192,192,192) rgb(135,206,235) rgb(106,90,205) rgb(112,128,144) rgb(255,250,250) rgb(0,255,127) rgb(70,130,180) rgb(210,180,140) rgb(0,128,128) rgb(216,191,216) rgb(255,99,71) rgb(64,224,208) rgb(238,130,238) rgb(245,222,179) rgb(255,255,255) rgb(245,245,245) rgb(255,255,0) rgb(154,205,50)"
for color in $colors; do
echo "$i $color"
convert csspalette1.png -size 10x10 xc:"$color" +append csspalette1.png
i=$(($i + 1))
done
convert csspalette1.png -gravity west -chop 10x0 \
-crop 140x10 +repage -append csspalette.png

This produces one row of colors (very wide image). If you are clever you can do a double loop and make a square image of multiple rows (16x16 rows for 256 colors)
User avatar
anthony
Posts: 8883
Joined: 2004-05-31T19:27:03-07:00
Authentication code: 8675308
Location: Brisbane, Australia

Re: how to apply a specific colormap?

Post by anthony »

fmw42 wrote:This produces one row of colors (very wide image). If you are clever you can do a double loop and make a square image of multiple rows (16x16 rows for 256 colors)
Alternativeally you can create each image and feed it into montage to generate an array of colors.

The intermediate image is then replaced by a pipeline!

Code: Select all

for color in $colors; do
   echo >&2 "$i $color"
   convert -size 10x10 xc:"$color" miff:-
   i=$(($i + 1))
done | montage - -tile 14x10 -geometry +0+0 csspalette.png
Note that the "echo" was modified to output to standard error and not standard output which is being used to output a stream of small 10x10 images (MIFF all concatenated together)

Fred what is the 140 CSS image for?

Steej: As you already have the colors in a format that is very close to a IM Enumerated image format. It would not take a lot of editing (with a good text editor) to turn it into that image file format. See... http://www.imagemagick.org/Usage/files/#txt
Anthony Thyssen -- Webmaster for ImageMagick Example Pages
https://imagemagick.org/Usage/
User avatar
fmw42
Posts: 25562
Joined: 2007-07-02T17:14:51-07:00
Authentication code: 1152
Location: Sunnyvale, California, USA

Re: how to apply a specific colormap?

Post by fmw42 »

Anthony wrote:Fred what is the 140 CSS image for?

Steej: As you already have the colors in a format that is very close to a IM Enumerated image format. It would not take a lot of editing (with a good text editor) to turn it into that image file format. See... http://www.imagemagick.org/Usage/files/#txt
The CCS image was for a client who wanted to color reduce some images via -remap into those colors. The row format was my first cut. I actually put into grid format of 7 rows of 20 colors.

With regard to the txt: format, Anthony, can you use that format with -remap? I had not even considered that.

Fred
User avatar
anthony
Posts: 8883
Joined: 2004-05-31T19:27:03-07:00
Authentication code: 8675308
Location: Brisbane, Australia

Re: how to apply a specific colormap?

Post by anthony »

Remap reads ANY image! It just extracts the colors for the the dithering stage.

Technically it is just the dither side of the -colors quantization command.
Anthony Thyssen -- Webmaster for ImageMagick Example Pages
https://imagemagick.org/Usage/
steej

Re: how to apply a specific colormap?

Post by steej »

wow, i didn't expect these wonderful answers. thank you :D

ok, fred's script works well, but I need the same colormap (exactly the same!)
this is the new colormap

Code: Select all

  Colormap: 256
         0: (  0,  0,  0) #000000 black
         1: ( 64, 32,  0) #402000 rgb(64,32,0)
         2: ( 96, 32,  0) #602000 rgb(96,32,0)
         3: (  0, 64,  0) #004000 rgb(0,64,0)
         4: ( 32, 64,  0) #204000 rgb(32,64,0)
         5: (  0, 96,  0) #006000 rgb(0,96,0)
         6: ( 32, 96,  0) #206000 rgb(32,96,0)
         7: ( 64, 64,  0) #404000 rgb(64,64,0)
         8: ( 96, 64,  0) #604000 rgb(96,64,0)
         9: ( 64, 96,  0) #406000 rgb(64,96,0)
        10: ( 96, 96,  0) #606000 rgb(96,96,0)
        11: (  0,  0, 64) #000040 rgb(0,0,64)
        12: ( 32,  0, 64) #200040 rgb(32,0,64)
        13: (  0, 32, 64) #002040 rgb(0,32,64)
        14: ( 32, 32, 64) #202040 rgb(32,32,64)
        15: ( 64,  0, 64) #400040 rgb(64,0,64)
        16: ( 96,  0, 64) #600040 rgb(96,0,64)
        17: ( 64, 32, 64) #402040 rgb(64,32,64)
        18: ( 96, 32, 64) #602040 rgb(96,32,64)
        19: (  0, 64, 64) #004040 rgb(0,64,64)
        20: ( 32, 64, 64) #204040 rgb(32,64,64)
        21: (  0, 96, 64) #006040 rgb(0,96,64)
        22: ( 32, 96, 64) #206040 rgb(32,96,64)
        23: ( 64, 64, 64) #404040 grey25
        24: ( 96, 64, 64) #604040 rgb(96,64,64)
        25: ( 64, 96, 64) #406040 rgb(64,96,64)
        26: ( 96, 96, 64) #606040 rgb(96,96,64)
        27: (128,  0,  0) #800000 maroon
        28: (128, 32,  0) #802000 rgb(128,32,0)
        29: (160, 32,  0) #A02000 rgb(160,32,0)
        30: (255,  0,  0) #FF0000 red
        31: (192, 32,  0) #C02000 rgb(192,32,0)
        32: (224, 32,  0) #E02000 rgb(224,32,0)
        33: (128, 64,  0) #804000 rgb(128,64,0)
        34: (160, 64,  0) #A04000 rgb(160,64,0)
        35: (128, 96,  0) #806000 rgb(128,96,0)
        36: (160, 96,  0) #A06000 rgb(160,96,0)
        37: (192, 64,  0) #C04000 rgb(192,64,0)
        38: (224, 64,  0) #E04000 rgb(224,64,0)
        39: (192, 96,  0) #C06000 rgb(192,96,0)
        40: (224, 96,  0) #E06000 rgb(224,96,0)
        41: (128,  0, 64) #800040 rgb(128,0,64)
        42: (160,  0, 64) #A00040 rgb(160,0,64)
        43: (128, 32, 64) #802040 rgb(128,32,64)
        44: (160, 32, 64) #A02040 rgb(160,32,64)
        45: (192,  0, 64) #C00040 rgb(192,0,64)
        46: (224,  0, 64) #E00040 rgb(224,0,64)
        47: (192, 32, 64) #C02040 rgb(192,32,64)
        48: (224, 32, 64) #E02040 rgb(224,32,64)
        49: (128, 64, 64) #804040 rgb(128,64,64)
        50: (160, 64, 64) #A04040 rgb(160,64,64)
        51: (128, 96, 64) #806040 rgb(128,96,64)
        52: (160, 96, 64) #A06040 rgb(160,96,64)
        53: (192, 64, 64) #C04040 rgb(192,64,64)
        54: (224, 64, 64) #E04040 rgb(224,64,64)
        55: (192, 96, 64) #C06040 rgb(192,96,64)
        56: (224, 96, 64) #E06040 rgb(224,96,64)
        57: (  0,128,  0) #008000 green
        58: ( 32,128,  0) #208000 rgb(32,128,0)
        59: (  0,160,  0) #00A000 rgb(0,160,0)
        60: ( 32,160,  0) #20A000 rgb(32,160,0)
        61: ( 64,128,  0) #408000 rgb(64,128,0)
        62: ( 96,128,  0) #608000 rgb(96,128,0)
        63: ( 64,160,  0) #40A000 rgb(64,160,0)
        64: ( 96,160,  0) #60A000 rgb(96,160,0)
        65: (  0,192,  0) #00C000 rgb(0,192,0)
        66: ( 32,192,  0) #20C000 rgb(32,192,0)
        67: (  0,224,  0) #00E000 rgb(0,224,0)
        68: (  0,255,  0) #00FF00 lime
        69: ( 32,224,  0) #20E000 rgb(32,224,0)
        70: ( 64,192,  0) #40C000 rgb(64,192,0)
        71: ( 96,192,  0) #60C000 rgb(96,192,0)
        72: ( 64,224,  0) #40E000 rgb(64,224,0)
        73: ( 96,224,  0) #60E000 rgb(96,224,0)
        74: (  0,128, 64) #008040 rgb(0,128,64)
        75: ( 32,128, 64) #208040 rgb(32,128,64)
        76: (  0,160, 64) #00A040 rgb(0,160,64)
        77: ( 32,160, 64) #20A040 rgb(32,160,64)
        78: ( 64,128, 64) #408040 rgb(64,128,64)
        79: ( 96,128, 64) #608040 rgb(96,128,64)
        80: ( 64,160, 64) #40A040 rgb(64,160,64)
        81: ( 96,160, 64) #60A040 rgb(96,160,64)
        82: (  0,192, 64) #00C040 rgb(0,192,64)
        83: ( 32,192, 64) #20C040 rgb(32,192,64)
        84: (  0,224, 64) #00E040 rgb(0,224,64)
        85: ( 32,224, 64) #20E040 rgb(32,224,64)
        86: ( 64,192, 64) #40C040 rgb(64,192,64)
        87: ( 96,192, 64) #60C040 rgb(96,192,64)
        88: ( 64,224, 64) #40E040 rgb(64,224,64)
        89: ( 96,224, 64) #60E040 rgb(96,224,64)
        90: (128,128,  0) #808000 olive
        91: (160,128,  0) #A08000 rgb(160,128,0)
        92: (128,160,  0) #80A000 rgb(128,160,0)
        93: (160,160,  0) #A0A000 rgb(160,160,0)
        94: (192,128,  0) #C08000 rgb(192,128,0)
        95: (224,128,  0) #E08000 rgb(224,128,0)
        96: (192,160,  0) #C0A000 rgb(192,160,0)
        97: (224,160,  0) #E0A000 rgb(224,160,0)
        98: (128,192,  0) #80C000 rgb(128,192,0)
        99: (160,192,  0) #A0C000 rgb(160,192,0)
       100: (128,224,  0) #80E000 rgb(128,224,0)
       101: (160,224,  0) #A0E000 rgb(160,224,0)
       102: (192,192,  0) #C0C000 rgb(192,192,0)
       103: (224,192,  0) #E0C000 rgb(224,192,0)
       104: (192,224,  0) #C0E000 rgb(192,224,0)
       105: (224,224,  0) #E0E000 rgb(224,224,0)
       106: (255,255,  0) #FFFF00 yellow
       107: (128,128, 64) #808040 rgb(128,128,64)
       108: (160,128, 64) #A08040 rgb(160,128,64)
       109: (128,160, 64) #80A040 rgb(128,160,64)
       110: (160,160, 64) #A0A040 rgb(160,160,64)
       111: (192,128, 64) #C08040 rgb(192,128,64)
       112: (224,128, 64) #E08040 rgb(224,128,64)
       113: (192,160, 64) #C0A040 rgb(192,160,64)
       114: (224,160, 64) #E0A040 rgb(224,160,64)
       115: (128,192, 64) #80C040 rgb(128,192,64)
       116: (160,192, 64) #A0C040 rgb(160,192,64)
       117: (128,224, 64) #80E040 rgb(128,224,64)
       118: (160,224, 64) #A0E040 rgb(160,224,64)
       119: (192,192, 64) #C0C040 rgb(192,192,64)
       120: (224,192, 64) #E0C040 rgb(224,192,64)
       121: (192,224, 64) #C0E040 rgb(192,224,64)
       122: (224,224, 64) #E0E040 rgb(224,224,64)
       123: (  0,  0,128) #000080 navy
       124: ( 32,  0,128) #200080 rgb(32,0,128)
       125: (  0, 32,128) #002080 rgb(0,32,128)
       126: ( 32, 32,128) #202080 rgb(32,32,128)
       127: ( 64,  0,128) #400080 rgb(64,0,128)
       128: ( 96,  0,128) #600080 rgb(96,0,128)
       129: ( 64, 32,128) #402080 rgb(64,32,128)
       130: ( 96, 32,128) #602080 rgb(96,32,128)
       131: (  0, 64,128) #004080 rgb(0,64,128)
       132: ( 32, 64,128) #204080 rgb(32,64,128)
       133: (  0, 96,128) #006080 rgb(0,96,128)
       134: ( 32, 96,128) #206080 rgb(32,96,128)
       135: ( 64, 64,128) #404080 rgb(64,64,128)
       136: ( 96, 64,128) #604080 rgb(96,64,128)
       137: ( 64, 96,128) #406080 rgb(64,96,128)
       138: ( 96, 96,128) #606080 rgb(96,96,128)
       139: (  0,  0,192) #0000C0 rgb(0,0,192)
       140: ( 32,  0,192) #2000C0 rgb(32,0,192)
       141: (  0, 32,192) #0020C0 rgb(0,32,192)
       142: ( 32, 32,192) #2020C0 rgb(32,32,192)
       143: (  0,  0,255) #0000FF blue
       144: ( 64,  0,192) #4000C0 rgb(64,0,192)
       145: ( 96,  0,192) #6000C0 rgb(96,0,192)
       146: ( 64, 32,192) #4020C0 rgb(64,32,192)
       147: ( 96, 32,192) #6020C0 rgb(96,32,192)
       148: (  0, 64,192) #0040C0 rgb(0,64,192)
       149: ( 32, 64,192) #2040C0 rgb(32,64,192)
       150: (  0, 96,192) #0060C0 rgb(0,96,192)
       151: ( 32, 96,192) #2060C0 rgb(32,96,192)
       152: ( 64, 64,192) #4040C0 rgb(64,64,192)
       153: ( 96, 64,192) #6040C0 rgb(96,64,192)
       154: ( 64, 96,192) #4060C0 rgb(64,96,192)
       155: ( 96, 96,192) #6060C0 rgb(96,96,192)
       156: (128,  0,128) #800080 purple
       157: (160,  0,128) #A00080 rgb(160,0,128)
       158: (128, 32,128) #802080 rgb(128,32,128)
       159: (160, 32,128) #A02080 rgb(160,32,128)
       160: (192,  0,128) #C00080 rgb(192,0,128)
       161: (224,  0,128) #E00080 rgb(224,0,128)
       162: (192, 32,128) #C02080 rgb(192,32,128)
       163: (224, 32,128) #E02080 rgb(224,32,128)
       164: (128, 64,128) #804080 rgb(128,64,128)
       165: (160, 64,128) #A04080 rgb(160,64,128)
       166: (128, 96,128) #806080 rgb(128,96,128)
       167: (160, 96,128) #A06080 rgb(160,96,128)
       168: (192, 64,128) #C04080 rgb(192,64,128)
       169: (224, 64,128) #E04080 rgb(224,64,128)
       170: (192, 96,128) #C06080 rgb(192,96,128)
       171: (224, 96,128) #E06080 rgb(224,96,128)
       172: (128,  0,192) #8000C0 rgb(128,0,192)
       173: (160,  0,192) #A000C0 rgb(160,0,192)
       174: (128, 32,192) #8020C0 rgb(128,32,192)
       175: (160, 32,192) #A020C0 rgb(160,32,192)
       176: (192,  0,192) #C000C0 rgb(192,0,192)
       177: (224,  0,192) #E000C0 rgb(224,0,192)
       178: (192, 32,192) #C020C0 rgb(192,32,192)
       179: (224, 32,192) #E020C0 rgb(224,32,192)
       180: (255,  0,255) #FF00FF magenta
       181: (128, 64,192) #8040C0 rgb(128,64,192)
       182: (160, 64,192) #A040C0 rgb(160,64,192)
       183: (128, 96,192) #8060C0 rgb(128,96,192)
       184: (160, 96,192) #A060C0 rgb(160,96,192)
       185: (192, 64,192) #C040C0 rgb(192,64,192)
       186: (224, 64,192) #E040C0 rgb(224,64,192)
       187: (192, 96,192) #C060C0 rgb(192,96,192)
       188: (224, 96,192) #E060C0 rgb(224,96,192)
       189: (  0,128,128) #008080 teal
       190: ( 32,128,128) #208080 rgb(32,128,128)
       191: (  0,160,128) #00A080 rgb(0,160,128)
       192: ( 32,160,128) #20A080 rgb(32,160,128)
       193: ( 64,128,128) #408080 rgb(64,128,128)
       194: ( 96,128,128) #608080 rgb(96,128,128)
       195: ( 64,160,128) #40A080 rgb(64,160,128)
       196: ( 96,160,128) #60A080 rgb(96,160,128)
       197: (  0,192,128) #00C080 rgb(0,192,128)
       198: ( 32,192,128) #20C080 rgb(32,192,128)
       199: (  0,224,128) #00E080 rgb(0,224,128)
       200: ( 32,224,128) #20E080 rgb(32,224,128)
       201: ( 64,192,128) #40C080 rgb(64,192,128)
       202: ( 96,192,128) #60C080 rgb(96,192,128)
       203: ( 64,224,128) #40E080 rgb(64,224,128)
       204: ( 96,224,128) #60E080 rgb(96,224,128)
       205: (  0,128,192) #0080C0 rgb(0,128,192)
       206: ( 32,128,192) #2080C0 rgb(32,128,192)
       207: (  0,160,192) #00A0C0 rgb(0,160,192)
       208: ( 32,160,192) #20A0C0 rgb(32,160,192)
       209: ( 64,128,192) #4080C0 rgb(64,128,192)
       210: ( 96,128,192) #6080C0 rgb(96,128,192)
       211: ( 64,160,192) #40A0C0 rgb(64,160,192)
       212: ( 96,160,192) #60A0C0 rgb(96,160,192)
       213: (  0,192,192) #00C0C0 rgb(0,192,192)
       214: ( 32,192,192) #20C0C0 rgb(32,192,192)
       215: (  0,255,255) #00FFFF cyan
       216: ( 64,192,192) #40C0C0 rgb(64,192,192)
       217: ( 96,192,192) #60C0C0 rgb(96,192,192)
       218: (128,128,128) #808080 fractal
       219: (160,128,128) #A08080 rgb(160,128,128)
       220: (128,160,128) #80A080 rgb(128,160,128)
       221: (160,160,128) #A0A080 rgb(160,160,128)
       222: (160,160,164) #A0A0A4 rgb(160,160,164)
       223: (192,128,128) #C08080 rgb(192,128,128)
       224: (224,128,128) #E08080 rgb(224,128,128)
       225: (192,160,128) #C0A080 rgb(192,160,128)
       226: (224,160,128) #E0A080 rgb(224,160,128)
       227: (128,192,128) #80C080 rgb(128,192,128)
       228: (160,192,128) #A0C080 rgb(160,192,128)
       229: (128,224,128) #80E080 rgb(128,224,128)
       230: (160,224,128) #A0E080 rgb(160,224,128)
       231: (192,192,128) #C0C080 rgb(192,192,128)
       232: (224,192,128) #E0C080 rgb(224,192,128)
       233: (192,224,128) #C0E080 rgb(192,224,128)
       234: (224,224,128) #E0E080 rgb(224,224,128)
       235: (128,128,192) #8080C0 rgb(128,128,192)
       236: (160,128,192) #A080C0 rgb(160,128,192)
       237: (128,160,192) #80A0C0 rgb(128,160,192)
       238: (160,160,192) #A0A0C0 rgb(160,160,192)
       239: (192,128,192) #C080C0 rgb(192,128,192)
       240: (224,128,192) #E080C0 rgb(224,128,192)
       241: (192,160,192) #C0A0C0 rgb(192,160,192)
       242: (224,160,192) #E0A0C0 rgb(224,160,192)
       243: (128,192,192) #80C0C0 rgb(128,192,192)
       244: (160,192,192) #A0C0C0 rgb(160,192,192)
       245: (166,202,240) #A6CAF0 rgb(166,202,240)
       246: (192,192,192) #C0C0C0 silver
       247: (192,220,192) #C0DCC0 rgb(192,220,192)
       248: (255,251,240) #FFFBF0 rgb(255,251,240)
       249: (255,255,255) #FFFFFF white
       250: (  0,  0,  0) #000000 black
       251: (  0,  0,  0) #000000 black
       252: (  0,  0,  0) #000000 black
       253: (  0,  0,  0) #000000 black
       254: (  0,  0,  0) #000000 black
       255: (  0,  0,  0) #000000 black
there are less colour (last 5 are blacks) and the order isn't preserved.

I know, this is a stupid request, but I've a program that open only bitmap file with this colormap.

@anthony: i will try to create directly the txt image, thank you.
User avatar
fmw42
Posts: 25562
Joined: 2007-07-02T17:14:51-07:00
Authentication code: 1152
Location: Sunnyvale, California, USA

Re: how to apply a specific colormap?

Post by fmw42 »

you must have skipped five entries in your list to get the last few as black. did you use rgb(...) values (or color names or hex values). Either should be fine. Just don't use the (...) raw values.

It might be easier to read the values in from a file (using cat) rather than making them into one long string. It is easy to miss something when making a long string. With a file, you can see exactly how many lines you have.
steej

Re: how to apply a specific colormap?

Post by steej »

the echo command of your script shows 255 color and the palette image created seems correct ...
I will check it more carefully ... :?
User avatar
fmw42
Posts: 25562
Joined: 2007-07-02T17:14:51-07:00
Authentication code: 1152
Location: Sunnyvale, California, USA

Re: how to apply a specific colormap?

Post by fmw42 »

perhaps you reached some character limit in the string of colors on your system?
steej

Re: how to apply a specific colormap?

Post by steej »

I have discovered that the compatibility problem with my program wasn't colormap but the bmp compression

I've resolved by

Code: Select all

mogrify -compression None filename.bmp
thank you for all
Drarakel
Posts: 547
Joined: 2010-04-07T12:36:59-07:00
Authentication code: 8675308

Re: how to apply a specific colormap?

Post by Drarakel »

Maybe it was also due to ImageMagick's special format of the RLE compression. (See my report here.)
Could you provide your first version of the BMP file (the compressed one) - or the command that created it?
steej

Re: how to apply a specific colormap?

Post by steej »

this is the image
http://rapidshare.com/files/403353976/fontain.bmp.html

download from internet and modified by imagemagick

Code: Select all

mogrify -units PixelsPerInch -resize 27x27! -density 72 -colors 256 fontain.bmp
I discovered the problem making the same procedure with GIMP and disabling the RLE compression.
Drarakel
Posts: 547
Joined: 2010-04-07T12:36:59-07:00
Authentication code: 8675308

Re: how to apply a specific colormap?

Post by Drarakel »

OK. Thanks!

Hmm.. But the 'fontain.bmp' file only has 105 colors - and in the palette are only 115 colors, apart from black.
So, I'm not sure how you got the palette from your first post...
And then this palette:
steej wrote:ok, fred's script works well, but I need the same colormap (exactly the same!)
this is the new colormap
...
I hope I don't bug you. :)

Do you have the same problem using your BMP files when writing it with Gimp - with enabled RLE compression?
steej

Re: how to apply a specific colormap?

Post by steej »

Drarakel wrote:Do you have the same problem using your BMP files when writing it with Gimp - with enabled RLE compression?
yes.
may be it is not related to the bug :)
Drarakel
Posts: 547
Joined: 2010-04-07T12:36:59-07:00
Authentication code: 8675308

Re: how to apply a specific colormap?

Post by Drarakel »

Seems to be the case, yes. Thanks for clarifying!
Post Reply