(57)【要約】【課題】色変化を避けるべき色情報を保持したまま画像ファイルの容量を削減する。【解決手段】変色を避けるべき優先色をカラーパレットに登録するほか、画像から生成したヒストグラムを基に利用頻度の高い色情報をカラーパレットに登録し、残る色についてもヒストグラムの色情報空間をメディアンカット法などで分割し決定した色をカラーパレットに登録し、生成されたカラーパレットで減色処理を行なうことにより、色変化を避けるべき色情報を保持したまま画像ファイルの容量を削減することが可能になる。特に、ヒストグラムは二種を生成し、利用頻度の高い色情報は詳細なヒストグラムから抽出することで原色を忠実に維持し、一方、残る色の処理は粗いヒストグラムを用いることで、近似色同士をまとめる計算処理負荷を軽減し、もって高品質な減色処理を高い効率で迅速に行うことができる。【選択図】図１１
2011249947.tif 000002
【特許請求の範囲】
【請求項１】
インデックスカラー方式のカラーパレットを用いて画像を減色する画像減色装置において、
色変化の対象外とする色である優先色の色情報を記憶する優先色記憶手段と、
減色対象とする元の画像について、第一のヒストグラムと、前記第一のヒストグラムよりも粗い第二のヒストグラムと、を生成するヒストグラム生成手段と、
前記優先色記憶手段に記憶されている優先色の色情報をカラーパレットに登録する優先色登録手段と、
前記第一のヒストグラムに所定基準以上含まれる色の色情報をカラーパレットに登録する高頻度色登録手段と、
前記カラーパレットに登録された色情報を除くように前記第一のヒストグラム及び前記第二のヒストグラムを更新するヒストグラム更新手段と、
前記第二のヒストグラムの色情報空間を分割することによって使用する色を決定し、決定した色の色情報をカラーパレットに登録する分割決定手段と、
前記元の画像を前記カラーパレットに基づいたインデックスカラー方式を用いて減色した画像に変換する減色変換手段と、
を備えたことを特徴とする画像減色装置。
【請求項２】
前記元の画像における外縁の画素に所定量以上連続する色の色情報を前記カラーパレットに登録する手段を備えたことを特徴とする請求項１記載の画像減色装置。
【請求項３】
コンピュータにより、インデックスカラー方式のカラーパレットを用いて画像を減色する画像減色方法において、
色変化の対象外とする色である優先色の色情報を所定の優先色記憶手段に記憶させ、
コンピュータが、減色対象とする元の画像について、第一のヒストグラムと、前記第一のヒストグラムよりも粗い第二のヒストグラムと、を生成するヒストグラム生成ステップと、
コンピュータが、前記優先色記憶手段に記憶されている優先色の色情報をカラーパレットに登録する優先色登録ステップと、
コンピュータが、前記第一のヒストグラムに所定基準以上含まれる色の色情報をカラーパレットに登録する高頻度色登録ステップと、
コンピュータが、前記カラーパレットに登録された色情報を除くように前記第一のヒストグラム及び前記第二のヒストグラムを更新するヒストグラム更新ステップと、
コンピュータが、前記第二のヒストグラムの色情報空間を分割することによって使用する色を決定し、決定した色の色情報をカラーパレットに登録する分割決定ステップと、
コンピュータが、前記元の画像を前記カラーパレットに基づいたインデックスカラー方式を用いて減色した画像に変換する減色変換ステップと、
を含むことを特徴とする画像減色方法。
【請求項４】
コンピュータに、インデックスカラー方式のカラーパレットを用いて画像を減色させる画像減色プログラムにおいて、
そのプログラムはコンピュータを制御することにより、
色変化の対象外とする色である優先色の色情報を記憶する優先色記憶手段を実現させ、
減色対象とする元の画像について、第一のヒストグラムと、前記第一のヒストグラムよりも粗い第二のヒストグラムと、を生成させ、
前記優先色記憶手段に記憶されている優先色の色情報をカラーパレットに登録させ、
前記第一のヒストグラムに所定基準以上含まれる色の色情報をカラーパレットに登録させ、
前記カラーパレットに登録された色情報を除くように前記第一のヒストグラム及び前記第二のヒストグラムを更新させ、
前記第二のヒストグラムの色情報空間を分割することによって使用する色を決定し、決定した色の色情報をカラーパレットに登録させ、
前記元の画像を前記カラーパレットに基づいたインデックスカラー方式を用いて減色した画像に変換させる
ことを特徴とする画像減色プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータによる画像の減色処理に関する。
【背景技術】
【０００２】
インターネットのウェブページで地図を表示するサービス（例えば、非特許文献１参照）が普及している。この種のサービスで配信される地図画像は、実際にはタイル状に区切られ、表示が要求された地点周辺の地図画像を端末に配信し、端末側で地図画像を並べて表示することで、最小限のデータ量で機動的な表示を実現している。一方、地図画像の内容については、見易さの観点から、山間部の高低差をシェーディングで表したり、建物の高さを立体的に表現するなど、豊かな表現が試みられている。
【０００３】
ただ、地図の表現を豊かにすると色数が増えるなどで地図画像が大容量化し、配信側サーバの負荷、データ伝送量の増加、表示側端末の処理負荷などが課題となる。この点に関し、画像ファイルのサイズを削減する減色処理の技術も存在する。例えば、画像データ中における順番で連続する画素のインデックス同士が近い値となるようにカラーパレットを再構成することで、圧縮率向上を図る提案などがある（例えば、特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】ヤフー株式会社、「Yahoo!地図」、［online］、［2010年4月26日検索］、インターネット〈URL:  http://map.yahoo.co.jp/>
【特許文献】
【０００５】
【特許文献１】特開２００２−１４２１１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、地図画像には、ブランドロゴのアイコンや、画像を並べる際に隣り合う境界部分の色など、減色処理による色変化を避けるべき部分があり、上記のような一般的な従来の減色処理を適用することは困難であった。
【０００７】
上記の課題に対し、本発明は、色変化を避けるべき色情報を保持したまま画像ファイルの容量を削減することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的をふまえ、本発明の一態様（１）は、インデックスカラー方式のカラーパレットを用いて画像を減色する画像減色装置において、色変化の対象外とする色である優先色の色情報を記憶する優先色記憶手段と、減色対象とする元の画像について、第一のヒストグラムと、前記第一のヒストグラムよりも粗い第二のヒストグラムと、を生成するヒストグラム生成手段と、前記優先色記憶手段に記憶されている優先色の色情報をカラーパレットに登録する優先色登録手段と、前記第一のヒストグラムに所定基準以上含まれる色の色情報をカラーパレットに登録する高頻度色登録手段と、前記カラーパレットに登録された色情報を除くように前記第一のヒストグラム及び前記第二のヒストグラムを更新するヒストグラム更新手段と、前記第二のヒストグラムの色情報空間を分割することによって使用する色を決定し、決定した色の色情報をカラーパレットに登録する分割決定手段と、前記元の画像を前記カラーパレットに基づいたインデックスカラー方式を用いて減色した画像に変換する減色変換手段と、を備えたことを特徴とする。
【０００９】
本発明の他の態様（３）は、上記態様を方法のカテゴリで捉えたもので、コンピュータにより、インデックスカラー方式のカラーパレットを用いて画像を減色する画像減色方法において、色変化の対象外とする色である優先色の色情報を所定の優先色記憶手段に記憶させ、コンピュータが、減色対象とする元の画像について、第一のヒストグラムと、前記第一のヒストグラムよりも粗い第二のヒストグラムと、を生成するヒストグラム生成ステップと、コンピュータが、前記優先色記憶手段に記憶されている優先色の色情報をカラーパレットに登録する優先色登録ステップと、コンピュータが、前記第一のヒストグラムに所定基準以上含まれる色の色情報をカラーパレットに登録する高頻度色登録ステップと、コンピュータが、前記カラーパレットに登録された色情報を除くように前記第一のヒストグラム及び前記第二のヒストグラムを更新するヒストグラム更新ステップと、コンピュータが、前記第二のヒストグラムの色情報空間を分割することによって使用する色を決定し、決定した色の色情報をカラーパレットに登録する分割決定ステップと、コンピュータが、前記元の画像を前記カラーパレットに基づいたインデックスカラー方式を用いて減色した画像に変換する減色変換ステップと、を含むことを特徴とする。
【００１０】
本発明の他の態様（４）は、上記態様をコンピュータ・プログラムのカテゴリで捉えたもので、コンピュータに、インデックスカラー方式のカラーパレットを用いて画像を減色させる画像減色プログラムにおいて、そのプログラムはコンピュータを制御することにより、色変化の対象外とする色である優先色の色情報を記憶する優先色記憶手段を実現させ、減色対象とする元の画像について、第一のヒストグラムと、前記第一のヒストグラムよりも粗い第二のヒストグラムと、を生成させ、前記優先色記憶手段に記憶されている優先色の色情報をカラーパレットに登録させ、前記第一のヒストグラムに所定基準以上含まれる色の色情報をカラーパレットに登録させ、前記カラーパレットに登録された色情報を除くように前記第一のヒストグラム及び前記第二のヒストグラムを更新させ、前記第二のヒストグラムの色情報空間を分割することによって使用する色を決定し、決定した色の色情報をカラーパレットに登録させ、前記元の画像を前記カラーパレットに基づいたインデックスカラー方式を用いて減色した画像に変換させることを特徴とする。
【００１１】
このように、変色を避けるべき優先色をカラーパレットに登録するほか、画像から生成したヒストグラムを基に利用頻度の高い色情報をカラーパレットに登録し、残る色についてもヒストグラムの色情報空間をメディアンカット法などで分割し決定した色をカラーパレットに登録し、生成されたカラーパレットで減色処理を行なうことにより、色変化を避けるべき色情報を保持したまま画像ファイルの容量を削減することが可能になる。
【００１２】
特に、ヒストグラムは二種を生成し、利用頻度の高い色情報は詳細なヒストグラムから抽出することで原色を忠実に維持し、一方、残る色の処理は粗いヒストグラムを用いることで、近似色同士をまとめる計算処理負荷を軽減し、もって高品質な減色処理を高い効率で迅速に行うことができる。
【００１３】
本発明の他の態様（２）は、上記いずれかの態様において、前記元の画像における外縁の画素に所定量以上連続する色の色情報を前記カラーパレットに登録する手段を備えたことを特徴とする。
【００１４】
このように、タイル状に分割された地図画像が端末で表示されるときに相互に接する外縁の画素で連続する色をカラーパレットに登録することにより、減色処理後においても画像間の境界で不自然な色違いが発生せず自然な表示が維持できる。
【００１５】
なお、上記の各態様とは異なるカテゴリ（装置に対し方法、方法に対しプログラムなど）や、以下に説明するさらに具体的な各態様も本発明に含まれる。異なるカテゴリについては、「手段」を「ステップ」のように適宜読み替えるものとする。
【発明の効果】
【００１６】
本発明によれば、色変化を避けるべき色情報を保持したまま画像ファイルの容量を削減することが可能となる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施形態の構成を示す機能ブロック図。
【図２】本発明の実施形態で用いる情報（データ）を例示する図。
【図３】本発明の実施形態における処理手順の全体を示すフローチャート。
【図４】本発明の実施形態におけるヒストグラムを例示する概念図。
【図５】本発明の実施形態においてヒストグラムを生成する処理手順を示すフローチャート。
【図６】本発明の実施形態おける優先色リストに基づく登録の処理手順を示すフローチャート。
【図７】本発明の実施形態おいてヒストグラムを更新する処理手順を示すフローチャート。
【図８】本発明の実施形態おいて境界色を登録する処理手順を示すフローチャート。
【図９】本発明の実施形態において高頻度色を登録する処理手順を示すフローチャート。
【図１０】本発明の実施形態においてパレットに基づく画像変換の処理手順を示すフローチャート。
【図１１】本発明の実施形態において処理途中の各ヒストグラムを例示する概念図。
【図１２】本発明の実施形態におけるメディアンカット処理を例示する概念図。
【発明を実施するための形態】
【００１８】
次に、本発明を実施するための形態（「実施形態」と呼ぶ）について、図に沿って説明する。なお、背景技術や課題などで既に述べた内容と共通の前提事項については適宜省略する。
【００１９】
〔１．構成〕
本実施形態は、インデックスカラー方式のカラーパレットを用いて画像を減色する画像減色装置（以下「本装置」と略する）に関する。図１に示すように、本装置１は、通信ネットワークＮ経由で、ユーザが用いる端末Ｔに、ウェブページとして地図を表示するウェブサーバを兼ね、配信する地図の画像を予め減色するものである。
【００２０】
本装置１は、一般的なコンピュータの構成として少なくとも、ＣＰＵなどの演算制御部６と、外部記憶装置（ＨＤＤ等）や主メモリ等の記憶装置７と、通信ネットワークＮ（インターネット、携帯電話網、ＬＡＮなど）との通信手段８（ＬＡＮアダプタなど）と、を有する。また、端末Ｔは、パーソナル・コンピュータ（ＰＣ）、スマートフォンや携帯電話端末装置など、ユーザの用いる情報処理装置で、図１では一つを模式的に例示するが、実際は多数存在する。
【００２１】
そして、本装置１では、記憶装置７に予め記憶（インストール）した図示しない所定のコンピュータ・プログラムが演算制御部６を制御することで、図１に示す各手段などの要素（１１，１２，２０など）を実現する。これら各要素のうち、情報の記憶手段は、記憶装置７において各種のデータベース（「ＤＢ」とも表す）やファイル、配列等の変数、各種スタックやレジスタ、システム設定値など任意の形式で実現できる。
【００２２】
このような記憶手段のうち、元画像記憶手段１１は、減色の対象とする画像をファイルなどの単位で記憶している手段である。また、優先色記憶手段１２は、色変化の対象外とする色である優先色の色情報を優先色リストとして記憶する手段である。優先色リストは、例えば、色ごとにＲＧＢの順にカンマ区切りで一行で表し、改行を区切りとしたテキストで用意する。その一例は、
２５５，２５５，２５５
０，０，０
１，２，３
・・・
・・・
のように示すことができる。
【００２３】
なお、記憶手段以外の各手段は、以下のような情報処理の機能・作用を実現・実行する処理手段である。
【００２４】
〔２．作用〕
上記のように構成した本装置１において、画像の減色処理に関する処理手順を図３のフローチャートに示す。
〔２−１．地図画像の読込みとヒストグラムの生成〕
すなわち、まず、ヒストグラム生成手段２０が、減色対象とする元の画像（以下「元画像」と略称する）を元画像記憶手段１１から読み込み（ステップＳ１）、この元画像について、第一のヒストグラムである詳細なヒストグラム（以下「密グラフ」と略称する）と、密グラフよりも粗いヒストグラムである第二のヒストグラム（以下「粗グラフ」と略称する）と、を生成する（ステップＳ２）。
【００２５】
図４は、同じ元画像から生成された密グラフ（図４（１））と粗グラフ（図４（２））を模式的に例示する概念図である。なお、ここで生成するヒストグラムは、ヒストグラムに相当する内容を表すデータであれば足り、ヒストグラムを視覚化する画像等は不要である。
【００２６】
また、ヒストグラムを２通り生成しているが、密グラフは、細かく色を区別して地図品質を保つために個々の箱の大きさ（値が対応する色情報の範囲）が小さいヒストグラム、他方の粗グラフは、大雑把に色を区別するために個々の箱の大きさ（値が対応する色情報の範囲）が粗い（広い）ヒストグラムである。
【００２７】
これら二種のヒストグラムを利用するメリットは、地図品質の保持と処理速度の高速化の両立である。つまり、細かい密グラフにより、多く使う色や境界部分などの変色を抑制する。しかし、密グラフのみでは、メディアンカット処理で空間分割する際に、処理対象の色情報空間について、その解像度（精密度）を例えば赤、緑、青それぞれ２５６とした場合、２５６３（１６７７万以上）と巨大となり、新しく分割してできた空間に属するヒストグラムの値の総和を求めるなどの処理負荷が非常に重くなり処理速度が低下する。
【００２８】
そこで、３２３（３２７６８）程度とデータサイズの小さな粗グラフについて、メディアンカット処理で演算対象とすることで、処理速度の改善する役割を担わせ、密グラフは優先色リストや利用頻度の高い色のカラーパレット登録処理の際に活用するといった役割分担をさせるものである。
【００２９】
ここで、ヒストグラム生成の処理手順を図５のフローチャートに示す。例えば、ＲＧＢ３次元空間の配列を、
１．密グラフ：histgram1[256][256][256]
２．粗グラフ：histgram2[32][32][32]
のように作成し（各次元の要素番号はそれぞれ０〜２５５、０〜３１となるものとする）、初期は各成分を全て０に設定する（ステップＳ２１）。この場合の密グラフは、配列インデックス（各次元の添字の組合せ）がそのままＲ，Ｇ，Ｂの値の組合せとなり、例えばある画素の値がＲ，Ｇ，Ｂのとき、histgram1[R][G][B]をインクリメントすることになる。
【００３０】
そして、未処理の画像を順次走査し画素を一つ選択するごとに（ステップＳ２２）、その画素の色情報すなわちフルカラー情報を抽出し（ステップＳ２３）、該当する配列成分を１インクリメントする（ステップＳ２４）処理を、画像中の全ての画素が処理済（ステップＳ２５：「ＹＥＳ」）になるまで繰り返す。
【００３１】
例えば、ある画素が黄色の場合、その画素の色情報はＲ：２５５，Ｇ：２５５，Ｂ：０であり、これに対して、密グラフについてはhistgram1[255][255][0]を１インクリメントする。他の例として、画素の色情報がＲ：２５５，Ｇ：１８，Ｂ：１８８なら、histgram1[255][18][188]をインクリメントする。
【００３２】
粗グラフについては、Ｒ，Ｇ，Ｂを組み合わせた値の８つに対応して、各色（各次元）の配列の大きさが３２であり、２５６／３２＝８＝２の３乗となる規模の関係がある。ここで、各色の値（Ｒ：２５５，Ｇ：１８，Ｂ：１８８）に対し、３ビット右シフト処理を「＞＞３」と表す場合、インクリメントするインデックスの各次元を算出するには、
Ｒ：２５５なら２５５＞＞３＝３１
Ｇ：１８なら１８＞＞３＝２
Ｂ：１８８なら１８８＞＞３＝２３
となるのでhistgram2[31][2][23]をインクリメントすればよい。
【００３３】
以上のように生成した密グラフの例を図２（１）に示す。この例は、histgram1[0][0][0]の値が１０７、histgram1[0][0][1]の値が５１である場合を示す。なお、上記では、Ｒ，Ｇ又はＢの値における１の差異で異なる色とする密グラフを例示したが、密グラフはもっと粗く、例えば、Ｒ，Ｇ又はＢの値における２以上もしくは４以上の差異で、異なる色とするなどとしてもよい。
【００３４】
〔２−２．優先色の登録〕
続いて、優先色登録手段３０が、優先色記憶手段１２に記憶されている優先色リストを読み込み（図３のステップＳ３）、優先色リストに含まれる優先色の色情報をカラーパレット（以下「パレット」と略称する）に登録する（ステップＳ４）。
【００３５】
具体的には、図６のフローチャートに例示するように、優先色リストから一色ずつ取り出し（ステップＳ４１）、その色の密グラフにおける値が所定閾値以上なら（ステップＳ４２：「ＹＥＳ」）その色の色情報をパレットに登録する（ステップＳ４３）という処理を、優先色リストに未調査の色がある間（ステップＳ４４：「ＹＥＳ」）繰り返す。なお、上記の繰り返しは、優先色によるパレットへの登録数が予め設定した所定数に達したら終了としてもよい。
【００３６】
以上のように色情報が登録されたパレットの一例を図２（２）に示す。また、優先色記憶手段１２に記憶されている優先色の色情報については、パレットに登録される具体的なＲＧＢ値等の色情報と同じ具体性や形式である必要は無く、パレットに登録されるそのような色情報を示す色名やポインタなどの識別情報でもよい。
【００３７】
〔２−３．ヒストグラムの更新〕
次に、ヒストグラム更新手段４０が、パレットに登録された色情報を除くように密グラフ及び粗グラフを更新する（図３のステップＳ５）。より具体的には、例えば図７に例示するように、パレットに登録した色のうち未処理の色情報を一色取り出し（ステップＳ５１）、その色の密グラフの値（ｈとする）を退避したうえ０にリセットし（ステップＳ５２）、粗グラフについては、その色に対応する値から、退避していた値ｈを減じる処理（ステップＳ５３）を、パレットに未処理の色がある間（ステップＳ５４：「ＹＥＳ」）、繰り返す。色情報に対応する粗グラフの値は、ヒストグラムの生成で示した例で言えば、３ビット右シフトする処理によって特定することができる。
【００３８】
すなわち、ヒストグラムの生成で示した例の値で説明すれば、パレットに登録した色情報がＲ：２５５，Ｇ：１８，Ｂ：１８８の場合、密グラフについてはhistgram1[255][18][188]を０にリセットする。このリセット直前にhistgram1[255][18][188]の値ｈを退避しそれが「２３」だったとする。リセットした密グラフに対応する粗グラフのインデックスは、既に述べた３ビット右シフト（「＞＞３」）により
Ｒ：  ２５５＞＞３＝３１
Ｇ：  １８＞＞３＝２
Ｂ：  １８８＞＞３＝２３
となり、該当するhistgram2[31][2][23]の値が仮に「８０」だったとすると、退避していた値ｈ「２３」を「８０」から減算して「５７」に更新する。
【００３９】
以上、図３や図７の例では、優先色リストの色をパレットに登録する処理の後、まとめてヒストグラムの更新を行う例を示したが、パレットに色を登録するたびにその色に対応するヒストグラムの部分を更新してもよい。後述するヒストグラムの更新（図３のステップＳ７，Ｓ９）についても以上に準じる。
【００４０】
〔２−４．境界色の登録〕
続いて、高頻度色登録手段５０が、元の画像における外縁の画素に所定量以上連続する色（「境界色」と略称する）の色情報をパレットに登録し（ステップＳ６）、ヒストグラム更新手段４０がヒストグラムの更新を行う（ステップＳ７）。境界色を登録する具体的な処理手順は自由であるが、その一例を図８のフローチャートに示す。なお、境界色をパレットに登録する処理は、高頻度色登録手段５０に限らず他の手段が行ってもよい。また、以下の例は、画像の外縁のうち所定の画素（例えば左上隅など）などを始点として所定の方向（例えば時計回り）に行うことを前提とする。
【００４１】
図８の処理手順では、まず、走査始点（例えば画像の左上隅）とする画素の色情報を取得すると共に、同色の連続数をカウントするためのカウンタを１にリセットする（ステップＳ６１）。そして、走査方向における次の画素が処理済となるまで（ステップＳ６２：「ＹＥＳ」）、走査方向における次の画素の色情報を取得し（ステップＳ６３）、直前の画素と同色であれば（ステップＳ６４：「ＹＥＳ」）カウンタをインクリメントする（ステップＳ６５）、という処理を繰り返す。
【００４２】
上記の繰り返しにおいて、次の画素が処理済の場合（ステップＳ６２：「ＹＥＳ」）又は次の画素が直前の画素と異なる色だった場合は（ステップＳ６４：「ＮＯ」）、カウンタ値が所定値以上か判断し（ステップＳ６６）、カウンタ値が所定値以上で（ステップＳ６６：「ＹＥＳ」）、その色（連続数をカウントしてきた直前の画素の色）についてパレットに登録済でなければ（ステップＳ６７：「ＮＯ」）、その色をパレットに登録する（ステップＳ６８）。
【００４３】
カウンタ値が所定値以上でなかった場合や（ステップＳ６６：「ＮＯ」）、カウンタ値は所定値以上だったが色がパレットに登録済だった場合（ステップＳ６７：「ＹＥＳ」）、及び、色のパレットへの登録が済んだ後（ステップＳ６８）、走査方向における次の画素が処理済か判断する（ステップＳ６９）。判断の結果、走査方向における次の画素が処理済なら（ステップＳ６９：「ＹＥＳ」）、処理が一周終わったことになるので処理手順を終了するが、次の画素が処理済でなければ（ステップＳ６９：「ＮＯ」）、カウンタを１にリセットし（ステップＳ７０）、次の画素の情報取得（ステップＳ６３）からの処理に戻る。
【００４４】
なお、始点と終点の連続性、すなわち、処理の始点の画素が同色の連なりの途中だった場合に、その連なりの検出漏れを防ぐという点を厳密に考慮させるには、始点が関わるカウンタの数（例えば始点からの同色連続数）を記憶させて、始点と終点の画素の色が同じ場合、最後のカウンタの数（終点を含む同色連続数）とを足してそれが所定値を超えていればカラーパレットに登録するという処理にすればよい。
【００４５】
〔２−５．高頻度色の登録〕
さらに、高頻度色登録手段５０が、密グラフに所定基準（閾値、割合など）以上含まれる色（「高頻度色」と呼ぶこととする）の色情報をパレットに登録し（ステップＳ８）、ヒストグラム更新手段４０がヒストグラムの更新を行う（ステップＳ９）。
【００４６】
より具体的には、高頻度色の登録では、図９に例示するように、密グラフから未処理の要素を取り出し（ステップＳ８１）、その要素の密グラフにおける値が所定基準（例えば一定割合など）以上なら（ステップＳ８２：「ＹＥＳ」）その要素に対応する色（例えば、その要素に格納される全ての色の重心）をパレットに登録する（ステップＳ８３）、という処理を未処理の要素が有る間（ステップＳ８４：「ＹＥＳ」）繰り返す。なお、高頻度色によるパレットへの登録数が予め設定した所定数に達したら繰り返しは終了としてもよい。
【００４７】
以上説明してきたように、パレットに登録した優先色、境界色、高頻度色を、図４（１）に例示した密グラフからヒストグラムの更新により除いた状態を図１１（１）に例示する。また、この密グラフに対応する粗グラフ（図１１（２））では、密グラフで除かれた色に対応する分の値（破線で示す）が除去されている。
【００４８】
〔２−６．残る色の決定と登録〕
次に、分割決定手段６０が、粗グラフの色情報空間を分割することによって使用する色を決定し、決定した色の色情報をパレットに登録する（図３のステップＳ１０）。色情報空間を分割する処理の詳細は自由に決定してよいが、典型的なアルゴリズムとしはメディアンカット処理がある。メディアンカット処理では、粗グラフで構成される色空間全体を最初は一つのブロックとみなす。次に、そのブロックのＲＧＢ軸の最も長い辺の軸方向でブロックを２分割する。但し、辺の長さが同じ場合はＲＧＢの優先順位で分割軸を決定する。
【００４９】
分割されたブロックの外縁に属する粗グラフの値が全てゼロであればブロックの有効範囲を再構成しておく（以降のブロック分割直後はこの処理を実施する）。次に、次段落でも示す空間の体積がもっとも大きなブロックについて上記と同様にブロックを２分割する。以降は同様に繰り返す。空間を分割する処理の終了条件の一例は、カラーパレットにおいて未登録で空いている残り色数まで、空間分割することである。
【００５０】
終了条件の他の例としては、まず、これ以前の処理で既にパレットに登録済の色＋このメディアンカット処理で分割された空間の数が、２５６又は予め指定した最大色数に達したら処理を終了としてもよいし、また、ＲＧＢの色情報空間を分割してゆく際、例えば分割後の空間の体積
（直方体のＲの幅）×（直方体のＧの幅）×（直方体のＢの幅）
の値が、予め指定された所定の空間閾値より小さくなったらそれ以上の分割は中止としてもよい。
【００５１】
そして、分割した個々の色情報空間の最頻値や平均値を減色後の登録色として決定し、パレットに登録する。ここで、図１２は、図１１（２）に例示した更新後の粗グラフ（図１２（１））をもとに、図１２（２）に例示するように、色情報空間を一点鎖線で示すように分割すると共に、太い縦の実線で示す登録色を決定した状態を例示する概念図である。なお、図１２（２）において、色情報空間中における示す登録色の位置は、ヒストグラムの各値を重みとして加重平均を用いた場合であり、このようにすれば全画素の登録色との変色幅の合計が最小となるが、加重平均は必須では無く単純平均などでもよい。
【００５２】
〔２−７．パレットを用いた変換〕
最後に、減色変換手段７０が、元の画像の各画素情報を、パレットに基づいたインデックスカラー方式を用いて減色した画像に変換し、減色画像記憶手段７５に記憶させ（図３のステップＳ１１）、減色した画像はウェブ配信手段８０が地図表示要求に応じ端末Ｔに送信する。
【００５３】
変換のより具体的な処理手順を図１０のフローチャートに示す。すなわち、まず、減色変換手段７０は、元の画像のうち未処理の画素を一つ選択し（ステップＳ１１１）、選択した画素についてフルカラーの色情報すなわちＲＧＢ値を抽出する（ステップＳ１１２）。
【００５４】
そして、その色情報と最も近いパレットの登録色（分割された色情報空間のうちその色情報が属するものに対応する登録色でもよい）を判定し（ステップＳ１１３）、判定した登録色のパレット番号であるインデックスを画素に紐付ける（ステップＳ１１４）。以上の画素の選択（ステップＳ１１１）から登録色の画素への紐付け（ステップＳ１１４）という処理は、未処理の画素がある限り（ステップＳ１１５：「ＹＥＳ」）、繰り返す。
【００５５】
例えば、図２（３）に例示するように、画素ごとの色情報がＲＧＢで表されている場合は、画素あたり３バイトのデータ量であるが、図２（４）に例示するように、最も近い登録色のインデックスに置き換えることで減色すれば、画素あたり１バイトのデータ量で済み、カラーパレットのデータ量とその他のヘッダー情報などによるオーバーヘッドを考慮しても、元の画像の３割台程度への大幅なデータ圧縮効果が期待できる。
【００５６】
〔３．効果〕
本実施形態では、以上のように、変色を避けるべき優先色をカラーパレットに登録するほか（図３のステップＳ４）、画像から生成したヒストグラムを基に利用頻度の高い色情報をカラーパレットに登録し（ステップＳ８）、残る色についてもヒストグラムの色情報空間をメディアンカット法などで分割し決定した色をカラーパレットに登録し（ステップＳ１０）、生成されたカラーパレットで減色処理を行なうことにより（ステップＳ１１）、色変化を避けるべき色情報を保持したまま画像ファイルの容量を削減することが可能になる。
【００５７】
特に、本実施形態では、ヒストグラムは二種を生成し（図４）、優先色や利用頻度の高い色情報（高頻度色）は詳細なヒストグラムから抽出することで原色を忠実に維持し、一方、残る色のメディアンカット処理は粗いヒストグラムを用いることで、近似色同士をまとめる計算処理負荷を軽減し、もって高品質な減色処理を高い効率で迅速に行うことができる。
【００５８】
また、本実施形態では、タイル状に分割された地図画像が端末で表示されるときに相互に接する外縁の画素で連続する色をカラーパレットに登録することにより（図３のステップＳ６）、減色処理後においても画像間の境界で不自然な色違いが発生せず自然な表示が維持できる。
【００５９】
〔４．他の実施形態〕
なお、上記各実施形態は例示に過ぎず、本発明は、以下に例示するものやそれ以外の他の実施態様も含むものである。例えば、上記実施形態では、画像減色装置は圧縮した画像のウェブ配信まで行うものとして例示したが、本発明は画像減色だけする装置として実現し、ウェブ配信などの利用は別の装置が行うようにしてもよい。また、上記実施形態では高頻度色とは別に境界色をパレットに登録したが、境界色は一般には高頻度色に含まれるので、境界色の登録は省略してもよく、高頻度色のみを登録すれば通常は十分な効果が得られる。
【００６０】
また、手段などの各要素は、コンピュータの演算制御部に限らず、ワイヤードロジック等に基づく電子回路など他の情報処理機構で実現してもよい。また、各構成図、データの図、フローチャートの図などは例示に過ぎず、各要素の有無、その順序や具体的内容などは適宜変更可能である。例えば、本発明の装置は、サーバなどの装置を複数用いて実現してもよく、個々の記憶手段を別個独立のサーバ装置やシステムで実現する構成も一般的である。また、機能によっては、外部のプラットフォーム等をＡＰＩ（アプリケーション・プログラム・インタフェース）やネットワークコンピューティング（いわゆるクラウドなど）で呼び出して実現するなど、構成は柔軟に変更できる。
【符号の説明】
【００６１】
１  画像減色装置
６  演算制御部
７  記憶装置
８  通信手段
１１  元画像記憶手段
１２  優先色記憶手段
２０  ヒストグラム生成手段
３０  優先色登録手段
４０  ヒストグラム更新手段
５０  高頻度色登録手段
６０  分割決定手段
７０  減色変換手段
７５  減色画像記憶手段
８０  ウェブ配信手段
Ｎ  通信ネットワーク
Ｔ  端末
【図１】
2011249947.tif 000003
【図２】
2011249947.tif 000004
【図３】
2011249947.tif 000005
【図４】
2011249947.tif 000006
【図５】
2011249947.tif 000007
【図６】
2011249947.tif 000008
【図７】
2011249947.tif 000009
【図８】
2011249947.tif 000010
【図９】
2011249947.tif 000011
【図１０】
2011249947.tif 000012
【図１１】
2011249947.tif 000013
【図１２】
2011249947.tif 000014