(57)【要約】【課題】ユーザが準備可能な糸色から元の画像を表現するのに適した糸色を選択して刺繍データを作成することが可能な刺繍データ作成装置を提供する。【解決手段】ユーザが準備可能なＮ色の使用可能糸色を特定する情報が取得される（Ｓ１１）。Ｎ色のうち、実際にミシンによる刺繍縫製に使用される使用糸色の数Ｍが設定される（Ｓ１２）。Ｎ色の使用可能糸色のうち１色で、または２色の混色表現で表現可能な表現可能色のリストが作成される（Ｓ１３）。表現可能色を代表色として、刺繍データの元となる画像が減色され（Ｓ１４）、減色後の画像における各表現可能色の使用頻度が算出される（Ｓ１５）。Ｎ色からＭ色を選ぶ全ての組合せが特定され（Ｓ２１）、各組合せで表現可能な表現可能色の使用頻度の合計値が算出される（Ｓ３１）。合計値が最大となる組合せに対応するＭ色の使用可能糸色が、使用糸色として決定される（Ｓ３２）。【選択図】図４
2012239772.tif 000002
【特許請求の範囲】
【請求項１】
複数の画素の集合体である画像の画像データに基づいて、ミシンにより刺繍縫製を行うための刺繍データを作成する刺繍データ作成装置であって、
前記ミシンによる刺繍縫製で実際に使用される複数の糸色である複数の使用糸色の数を、設定数として設定する糸色数設定手段と、
前記ミシンによる刺繍縫製に使用可能な複数の糸色である複数の使用可能糸色と、各々が前記複数の使用可能糸色のうち２色の中間的な色である少なくとも一の中間色とを、複数の表現可能色として特定する表現可能色特定手段と、
前記表現可能色特定手段によって特定された前記複数の表現可能色を代表色として減色した前記画像における前記複数の表現可能色の各々の使用頻度を、第一使用頻度として算出する第一使用頻度算出手段と、
前記第一使用頻度算出手段によって算出された前記第一使用頻度に基づき、前記複数の使用可能糸色のうち、前記糸色数設定手段によって設定された前記設定数の使用可能糸色を、前記複数の使用糸色として決定する使用糸色決定手段と、
を備えた刺繍データ作成装置。
【請求項２】
前記使用糸色決定手段は、
前記複数の使用可能糸色のうち、前記第一使用頻度算出手段によって算出された前記第一使用頻度が最も高い前記表現可能色に対応する使用可能糸色を、使用糸色として決定する第一決定手段と、
前記複数の表現可能色の前記第一使用頻度に基づき、既に使用糸色として決定された使用可能糸色である決定糸色を除く前記複数の使用可能糸色の各々について、前記使用可能糸色の前記第一使用頻度と、前記使用可能糸色と前記決定糸色の中間色の前記第一使用頻度の合計値を、第一合計値として算出する第一合計値算出手段と、
前記決定糸色を除く前記複数の使用可能糸色のうち、前記第一合計値算出手段によって算出された前記第一合計値が最大となる使用可能糸色を、使用糸色として決定する第二決定手段とを含み、
前記第一合計値算出手段および前記第二決定手段は、前記使用糸色の数が前記設定数に達するまで、順に処理を繰り返すことを特徴とする請求項１に記載の刺繍データ作成装置。
【請求項３】
前記使用糸色決定手段は、
前記第一使用頻度算出手段によって算出された前記第一使用頻度に基づき、前記複数の使用可能糸色から前記設定数の前記使用可能糸色を選出する組合せ毎に、前記複数の表現可能色のうち、前記組合せで表現可能な表現可能色の第一使用頻度の合計値を、第二合計値として算出する第二合計値算出手段と、
前記第二合計値算出手段によって算出された前記第二合計値が最大となる組合せに含まれる前記設定数の前記使用可能糸色を、前記複数の使用糸色として決定する第三決定手段とを含むことを特徴とする請求項１に記載の刺繍データ作成装置。
【請求項４】
前記使用糸色決定手段は、
前記複数の表現可能色のうち、前記第一使用頻度算出手段によって算出された前記第一使用頻度が高い順に、所定数の表現可能色を選択する表現可能色選択手段と、
前記複数の使用可能糸色のうち、前記表現可能色選択手段によって選択された前記所定数の表現可能色の各々を１色または２色で表現するために必要な複数の使用可能糸色を、複数の第一候補糸色として選択する第一候補選択手段とを更に含み、
前記第二合計値算出手段は、前記第一候補選択手段によって選択された前記複数の第一候補糸色から前記設定数の第一候補糸色を選出する組合せ毎に、前記第二合計値を算出し、
前記第三決定手段は、前記第二合計値算出手段によって算出された前記第二合計値が最大となる組合せに含まれる前記設定数の前記第一候補糸色を、前記複数の使用糸色として決定することを特徴とする請求項３に記載の刺繍データ作成装置。
【請求項５】
前記使用糸色決定手段は、
前記第一使用頻度算出手段によって算出された前記第一使用頻度に基づき、前記複数の使用可能糸色の各々の使用頻度である第二使用頻度を算出する第二使用頻度算出手段と、
前記複数の使用可能糸色のうち、前記第二使用頻度算出手段によって算出された前記第二使用頻度が高い順に、所定数の使用可能糸色を、所定数の第二候補糸色として選択する第二候補選択手段と、
前記第一使用頻度算出手段によって算出された前記第一使用頻度に基づき、前記第二候補選択手段によって選択された前記所定数の第二候補糸色から前記設定数の第二候補糸色を選出する組合せ毎に、前記複数の表現可能色のうち、前記組合せで表現可能な表現可能色の第一使用頻度の合計値を、第三合計値として算出する第三合計値算出手段と、
前記第三合計値算出手段によって算出された前記第三合計値が最大となる組合せに含まれる前記設定数の前記第二候補糸色を、前記複数の使用糸色として決定する第四決定手段とを含むことを特徴とする請求項１に記載の刺繍データ作成装置。
【請求項６】
前記表現可能色特定手段は、各々が前記複数の使用可能糸色のうち色空間における距離が閾値以上となる２色の中間的な色を、前記少なくとも一の中間色として特定した上で、前記複数の表現可能色を特定することを特徴とする請求項１〜５のいずれかに記載の刺繍データ作成装置。
【請求項７】
前記表現可能色特定手段は、前記複数の使用可能糸色のうち２色の有彩色の中間的な色が灰色である場合、前記灰色を除いて前記少なくとも一の中間色を特定した上で、前記複数の表現可能色を特定することを特徴とする請求項１〜６のいずれかに記載の刺繍データ作成装置。
【請求項８】
請求項１〜７のいずれかに記載の刺繍データ作成装置の各種処理手段として、刺繍データ作成装置のコンピュータを機能させるための刺繍データ作成プログラム。
【請求項９】
請求項８に記載の刺繍データ作成プログラムを記憶したコンピュータ読取り可能な媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、刺繍縫製可能なミシンによって刺繍縫製を行うための刺繍データを作成する刺繍データ作成装置、刺繍データ作成プログラム、および刺繍データ作成プログラムを記憶したコンピュータ読取り可能な媒体に関する。
【背景技術】
【０００２】
刺繍縫製可能なミシンによって写真等の画像のデータに基づく図柄を刺繍縫製するための刺繍データ作成装置が知られている。例えば、特許文献１に開示されている刺繍データ作成装置によれば、イメージスキャナ装置で読み込まれた画像から取得された画像データに基づいて画像内の各部の角度特徴とその強度が算出され、算出された角度特徴とその強度に従って線分が配置される。そして、各線分に対応する糸色が決定され、同じ糸色の線分が接続された後、線分のデータが縫目を示すデータに変換されることで、刺繍データが作成される。各線分に対応する糸色は、刺繍模様を縫製する際に実際に使用する糸色として予め決定された、ｎ色の使用糸色の中から選択される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−２７３８５９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
写真等の画像を刺繍の図柄で表現する場合、刺繍糸や針の太さには限界があり、画素のような細かい表現はできない。また、ユーザが準備可能な糸色には限りがあり、通常、１００色程度と考えられる。糸交換の回数等を考慮すると、実際に使用する糸色の数は更に限定され、１０色程度とするのが現実的である。従って、１００色程度の糸色から、元の画像を表現するのに最も適した１０色程度の糸色を選択することが重要である。特許文献１の刺繍データ作成装置では、ｎ色の使用糸色は、元画像の色がｎ色に減色された後、ユーザが準備可能な糸色の中から、減色後のｎ色に夫々近い色が選択されることで決定される。この方法では、準備可能な糸色が、色空間において十分均一に分布しており、元画像の減色後のｎ色の全てについて、いずれかの糸色が十分近いところにあれば、ｎ色の適切な使用糸色が決定できるが、準備可能な糸色が常にそのような状況にあるとは限らない。
【０００５】
本発明は、ユーザが準備可能な糸色から元の画像を表現するのに適した糸色を選択して刺繍データを作成することが可能な刺繍データ作成装置、刺繍データ作成プログラム、および刺繍データ作成プログラムを記憶したコンピュータ読取り可能な媒体を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の第一の態様に係る刺繍データ作成装置は、複数の画素の集合体である画像の画像データに基づいて、ミシンにより刺繍縫製を行うための刺繍データを作成する刺繍データ作成装置であって、糸色数設定手段と、表現可能色特定手段と、第一使用頻度算出手段と、使用糸色決定手段とを備えている。前記糸色数設定手段は、前記ミシンによる刺繍縫製で実際に使用される複数の糸色である複数の使用糸色の数を、設定数として設定する。前記表現可能色特定手段は、前記ミシンによる刺繍縫製に使用可能な複数の糸色である複数の使用可能糸色と、各々が前記複数の使用可能糸色のうち２色の中間的な色である少なくとも一の中間色とを、複数の表現可能色として特定する。前記第一使用頻度算出手段は、前記表現可能色特定手段によって特定された前記複数の表現可能色を代表色として減色した前記画像における前記複数の表現可能色の各々の使用頻度を、第一使用頻度として算出する。前記使用糸色決定手段は、前記第一使用頻度算出手段によって算出された前記第一使用頻度に基づき、前記複数の使用可能糸色のうち、前記糸色数設定手段によって設定された前記設定数の使用可能糸色を、前記複数の使用糸色として決定する。
【０００７】
使用可能糸色のうち１色のみを用いてある領域を縫製した場合、その領域の色は使用可能糸色となる。一方、使用可能糸色のうち２色による混色表現を用いてある領域を縫製した場合、その領域の色は、その２色の中間的な中間色に近似する。本発明の刺繍データ作成装置では、複数の使用可能糸色と、複数の使用可能糸色のうち２色の中間色とが表現可能色として特定され、表現可能色を代表色として元となる画像を減色した場合の各表現可能色の使用頻度（第一使用頻度）が算出される。よって、元の画像に、使用可能糸色そのものに近い色がなかったとしても、中間色に近い色が多く含まれれば、その中間色の第一使用頻度は高くなる。従って、表現可能色の第一使用頻度に基づいて、複数の使用可能糸色から使用糸色を決定することで、使用可能糸色のうち１色だけでなく２色を用いて混色表現をする場合を含めて、元の画像を表現するのに適した使用糸色を選択することができる。
【０００８】
前記使用糸色決定手段は、第一決定手段と、第一合計値算出手段と、第二決定手段とを含んでもよい。前記第一決定手段は、前記複数の使用可能糸色のうち、前記第一使用頻度算出手段によって算出された前記第一使用頻度が最も高い前記表現可能色に対応する使用可能糸色を、使用糸色として決定する。前記第一合計値算出手段は、前記複数の表現可能色の前記第一使用頻度に基づき、既に使用糸色として決定された使用可能糸色である決定糸色を除く前記複数の使用可能糸色の各々について、前記使用可能糸色の前記第一使用頻度と、前記使用可能糸色と前記決定糸色の中間色の前記第一使用頻度の合計値を、第一合計値として算出する。前記第二決定手段は、前記決定糸色を除く前記複数の使用可能糸色のうち、前記第一合計値算出手段によって算出された前記第一合計値が最大となる使用可能糸色を、使用糸色として決定する。前記第一合計値算出手段および前記第二決定手段は、前記使用糸色の数が前記設定数に達するまで、順に処理を繰り返してもよい。
【０００９】
この場合、まず、第一使用頻度が最も高い表現可能色に対応する使用可能糸色、すなわち、１色の使用可能糸色または２色の使用可能糸色が使用糸色として決定される。その後、残りの使用可能糸色から、単独で使用される場合および決定された使用糸色との混色表現に使用される場合の使用頻度が最も高くなる使用可能糸色、つまり、第一合計値が最大となる使用可能糸色を使用糸色として決定する処理が、使用糸色が設定数に達するまで繰り返される。従って、第一合計値を算出する必要がある糸色の組合せの数を抑制しつつ、使用可能糸色の１色または２色の混色表現で元の画像を表現するのに適した使用糸色を選択することができる。
【００１０】
前記使用糸色決定手段は、第二合計値算出手段と、第三決定手段とを含んでもよい。前記第二合計値算出手段は、前記第一使用頻度算出手段によって算出された前記第一使用頻度に基づき、前記複数の使用可能糸色から前記設定数の前記使用可能糸色を選出する組合せ毎に、前記複数の表現可能色のうち、前記組合せで表現可能な表現可能色の第一使用頻度の合計値を、第二合計値として算出する。前記第三決定手段は、前記第二合計値算出手段によって算出された前記第二合計値が最大となる組合せに含まれる前記設定数の前記使用可能糸色を、前記複数の使用糸色として決定する。
【００１１】
この場合、設定数の使用可能糸色を選出する組合せ全てのうち、第一使用頻度の合計値（第二合計値）が最大となる組合せに含まれる使用可能糸色が、使用糸色として決定される。従って、元の画像の色に最も近い色を表現できる使用糸色を選択することができる。
【００１２】
前記使用糸色決定手段は、前記第二合計値算出手段と前記第三決定手段に加え、表現可能色選択手段と、第一候補選択手段とを更に含んでもよい。前記表現可能色選択手段は、前記複数の表現可能色のうち、前記第一使用頻度算出手段によって算出された前記第一使用頻度が高い順に、所定数の表現可能色を選択する。前記第一候補選択手段は、前記複数の使用可能糸色のうち、前記表現可能色選択手段によって選択された前記所定数の表現可能色の各々を１色または２色で表現するために必要な複数の使用可能糸色を、複数の第一候補糸色として選択する。この場合、前記第二合計値算出手段は、前記第一候補選択手段によって選択された前記複数の第一候補糸色から前記設定数の第一候補糸色を選出する組合せ毎に、前記第二合計値を算出してもよい。前記第三決定手段は、前記第二合計値算出手段によって算出された前記第二合計値が最大となる組合せに含まれる前記設定数の前記第一候補糸色を、前記複数の使用糸色として決定してもよい。
【００１３】
この場合、組み合せに使用される使用可能糸色が、第一使用頻度が高い方から所定数の表現可能色に応じて絞り込まれるので、組合せの数を低減できる。従って、元の画像の色に近い色を表現できる使用糸色をより効率的に選択することができる。
【００１４】
前記使用糸色決定手段は、第二使用頻度算出手段と、第二候補選択手段と、第三合計値算出手段と、第四決定手段とを含んでもよい。前記第二使用頻度算出手段は、前記第一使用頻度算出手段によって算出された前記第一使用頻度に基づき、前記複数の使用可能糸色の各々の使用頻度である第二使用頻度を算出する。前記第二候補選択手段は、前記複数の使用可能糸色のうち、前記第二使用頻度算出手段によって算出された前記第二使用頻度が高い順に、所定数の使用可能糸色を、所定数の第二候補糸色として選択する。前記第三合計値算出手段は、前記第一使用頻度算出手段によって算出された前記第一使用頻度に基づき、前記第二候補選択手段によって選択された前記所定数の第二候補糸色から前記設定数の第二候補糸色を選出する組合せ毎に、前記複数の表現可能色のうち、前記組合せで表現可能な表現可能色の第一使用頻度の合計値を、第三合計値として算出する。前記第四決定手段は、前記第三合計値算出手段によって算出された前記第三合計値が最大となる組合せに含まれる前記設定数の前記第二候補糸色を、前記複数の使用糸色として決定する。
【００１５】
この場合、使用可能糸色と中間色を含む表現可能色の第一使用頻度から、表現可能色を表現する使用可能糸色各々の使用頻度（第二使用頻度）が算出される。そして、組み合せに使用される使用可能糸色が、第二使用頻度が高い方から所定数に絞り込まれるので、組合せの数を低減できる。従って、元の画像の色に近い色を表現できる使用糸色を効率的に選択することができる。
【００１６】
前記表現可能色特定手段は、各々が前記複数の使用可能糸色のうち色空間における距離が閾値以上となる２色の中間的な色を、前記少なくとも一の中間色として特定した上で、前記複数の表現可能色を特定してもよい。２色の糸色の色空間における距離がある程度近い場合、これらの２色の糸で混色表現を行っても、元の２色と近い中間色に近似するだけで、混色表現を行う効果が低い。従って、閾値未満の中間色は表現可能色から除外することで、混色表現を行う効果がより高い使用糸色を選択することができる。
【００１７】
前記表現可能色特定手段は、前記複数の使用可能糸色のうち２色の有彩色の中間的な色が灰色である場合、前記灰色を除いて前記少なくとも一の中間色を特定した上で、前記複数の表現可能色を特定してもよい。２色の有彩色の糸で混色表現を行っても、実際には灰色に近似した色を表現するのは難しいため、混色表現を行う効果が低い。従って、このような有彩色の混色による灰色を表現可能色から除外することで、混色表現を行う効果がより高い使用糸色を選択することができる。
【００１８】
本発明の第二の態様に係る刺繍データ作成プログラムは、前記第一の態様に係る刺繍データ作成装置の各種処理手段として、刺繍データ作成装置のコンピュータを機能させるためのプログラムである。したがって、刺繍データ作成プログラムがコンピュータによって実行されることにより、第一の態様に係る刺繍データ作成装置と同様の効果を奏することができる。
【００１９】
本発明の第三の態様に係るコンピュータ読取り可能な媒体は、前記第二の態様に係る刺繍データ作成プログラムを記憶している。したがって、媒体に記憶された刺繍データ作成プログラムがコンピュータによって実行されることにより、第一の態様に係る刺繍データ作成装置と同様の効果を奏することができる。
【図面の簡単な説明】
【００２０】
【図１】刺繍データ作成装置１の電気的構成を示すブロック図である。
【図２】ミシン３の外観図である。
【図３】刺繍データ作成装置１で実行されるメイン処理のフローチャートである。
【図４】メイン処理で行われる第一実施形態の糸色決定処理のフローチャートである。
【図５】表現可能色リストの一例を示す説明図である。
【図６】組合せに対応する使用頻度の合計値の算出例の説明図である。
【図７】第二実施形態の糸色決定処理のフローチャートである。
【図８】第三実施形態の糸色決定処理のフローチャートである。
【図９】使用可能糸色に対応する使用頻度の合計値の算出例の説明図である。
【図１０】第四実施形態の糸色決定処理のフローチャートである。
【図１１】第四実施形態の糸色決定処理のフローチャートであって、図１０の続きである。
【図１２】表現可能色リスト作成処理のフローチャートである。
【発明を実施するための形態】
【００２１】
以下、本発明の実施の形態について、図面を参照して説明する。
【００２２】
＜第１実施形態＞
図１〜図６を参照して、第一実施形態について説明する。まず、刺繍データ作成装置１の構成について、図１を参照して説明する。刺繍データ作成装置１は、後述のミシン３（図２参照）によって刺繍模様を縫製するのに使用される刺繍データを作成する装置である。本実施形態の刺繍データ作成装置１は、写真等の画像に基づく図柄を刺繍縫製するための刺繍データを作成することができる。
【００２３】
刺繍データ作成装置１は、例えば、所謂パーソナルコンピュータ等の汎用型の装置である。図２に示すように、刺繍データ作成装置１は、刺繍データ作成装置１の制御を司るコントローラであるＣＰＵ１１を備えている。ＣＰＵ１１には、ＲＡＭ１２と、ＲＯＭ１３と、入出力（Ｉ／Ｏ）インタフェイス１４とが接続されている。ＲＡＭ１２は、各種のデータを一時的に記憶する。ＲＯＭ１３は、ＢＩＯＳ等を記憶する。Ｉ／Ｏインタフェイス１４は、データの受け渡しの仲介を行う。Ｉ／Ｏインタフェイス１４には、ハードディスク装置（ＨＤＤ）１５、入力機器であるマウス２２、ビデオコントローラ１６、キーコントローラ１７、ＣＤ−ＲＯＭドライブ１８、メモリカードコネクタ２３、およびイメージスキャナ装置２５が接続されている。また、図１には図示されていないが、刺繍データ作成装置１は、外部機器やネットワークとの接続のための外部インタフェイスを備えていてもよい。
【００２４】
ビデオコントローラ１６には、表示機器であるディスプレイ２４が接続され、キーコントローラ１７には、入力機器であるキーボード２１が接続されている。ＣＤ−ＲＯＭドライブ１８には、ＣＤ−ＲＯＭ５４を挿入することができる。例えば、刺繍データ作成プログラムのセットアップ時には、刺繍データ作成プログラムを記憶するＣＤ−ＲＯＭ５４がＣＤ−ＲＯＭドライブ１８に挿入される。そして、刺繍データ作成プログラムが読み込まれ、ＨＤＤ１５のプログラム記憶エリア１５３に記憶される。メモリカードコネクタ２３には、メモリカード５５を接続して、メモリカード５５の情報の読み取り及びメモリカード５５に情報の書き込みを行うことができる。本実施形態で刺繍データ作成の元となる画像は、例えばイメージスキャナ装置２５を介して刺繍データ作成装置１に読み込まれる。
【００２５】
ＨＤＤ１５の記憶エリアについて説明する。図１に示すように、ＨＤＤ１５は、画像データ記憶エリア１５１、刺繍データ記憶エリア１５２、プログラム記憶エリア１５３、および設定値記憶エリア１５４を含む複数の記憶エリアを有する。画像データ記憶エリア１５１には、刺繍データ作成の元となる画像等、各種画像の画像データが記憶される。刺繍データ記憶エリア１５２には、本実施形態の刺繍データ作成処理によって作成された刺繍データが記憶される。プログラム記憶エリア１５３には、後述する刺繍データ作成プログラム等、刺繍データ作成装置１で行われる各種処理のためのプログラムが記憶される。設定値記憶エリア１５４には、各種処理で使用される各種設定値が記憶される。
【００２６】
図２を参照して、刺繍データ作成装置１で作成された刺繍データに基づいて刺繍模様を縫製することが可能なミシン３について、簡単に説明する。図２に示すように、ミシン３は、ベッド部３０、脚柱部３６、アーム部３８、および頭部３９を有する。ベッド部３０は、縫製者に対して左右方向に長い、ミシン３の土台部である。脚柱部３６は、ベッド部３０の右端部から上方へ延びる。アーム部３８は、ベッド部３０に対向して脚柱部３６の上端から左方へ延びる。頭部３９は、アーム部３８の左端に連結する部位である。ベッド部３０の上方には、刺繍が施される加工布を保持する刺繍枠４１を配置可能である。
【００２７】
刺繍縫製時には、刺繍枠４１は、ベッド部３０上に配置されるＹ方向駆動部４２、および本体ケース４３内に収容されたＸ方向駆動機構（図示せず）によって、ミシン３に固有のＸ・Ｙ座標系で示される針落ち点に移動される。刺繍枠４１が移動されるのと合わせて、縫針４４が装着された針棒３５及び釜機構（図示せず）が駆動されることにより、加工布上に刺繍模様が形成される。なお、Ｙ方向駆動部４２、Ｘ方向駆動機構、針棒３５等は、刺繍データに基づき、ミシン３に内蔵されたマイクロコンピュータ等を含む制御装置（図示せず）によって制御される。
【００２８】
ミシン３の脚柱部３６の側面には、メモリカード５５を着脱可能なメモリカードスロット３７が搭載されている。例えば、刺繍データ作成装置１で作成された刺繍データは、メモリカードコネクタ２３を介してメモリカード５５に記憶される。その後、メモリカード５５がミシン３のメモリカードスロット３７に装着され、記憶された刺繍データが読み出されて、ミシン３に刺繍データが記憶される。ミシン３の制御装置（図示せず）は、メモリカード５５から読み出された刺繍データに基づいて、上記の要素による刺繍模様の縫製動作を制御する。このようにして、刺繍データ作成装置１で作成された刺繍データに基づき、ミシン３を用いて刺繍模様を縫製することができる。
【００２９】
以下に、図３〜図６を参照して、第１実施形態の刺繍データ作成装置１で行われるメイン処理について説明する。図３に示すメイン処理は、ユーザが処理を開始する指示を入力すると、ＨＤＤ１５のプログラム記憶エリア１５３に記憶された刺繍データ作成プログラムが起動されることで開始され、ＣＰＵ１１がこのプログラムを実行することにより行われる。
【００３０】
図３に示すように、まず、刺繍データ作成の元となる画像（以下、元画像という）の画像データが刺繍データ作成装置１に入力される（Ｓ１）。画像データの入力方法は特に限定されないが、例えば、イメージスキャナ装置２５によって写真や図柄が読み込まれ、取得された画像データが用いられる。その他、予めＨＤＤ１５の画像データ記憶エリア１５１に記憶された画像データや、ＣＤ−ＲＯＭ１１４、メモリカード５５、ＣＤ−Ｒ等の外部記憶媒体に記憶された画像データが入力されてもよい。
【００３１】
元画像を構成する複数の画素の各々について、その角度特徴と角度特徴の強度が算出される（Ｓ２）。角度特徴は、画像中の色の連続性の高い方向を示す情報であり、角度特徴の強度は、色の変化の大きさを示す情報である。
【００３２】
角度特徴およびその強度は、いかなる方法で算出されてもよいが、例えば、特開２００１−２５９２６８に詳述されている方法を用いて算出することができる。よって、ここでは詳細な説明は省略し、概略のみを説明する。まず、元画像を構成する複数の画素のうち１つを注目画素として、注目画素とその周囲の所定数の画素を注目領域とする。注目領域内の各画素の色に関する属性値（例えば、輝度値）に基づいて、注目領域内における色の連続性の高い方向が特定され、注目画素の角度特徴とされる。また、注目領域内における色の変化の大きさを示す値が算出されて、注目画素の角度特徴の強度とされる。このように角度特徴およびその強度を算出する処理が、元画像を構成する画素の全てについて、順に行われる。各画素の角度特徴とその強度を示すデータは、ＲＡＭ１２の所定の記憶エリアに記憶される。なお、複数の画素を注目画素として、同様の処理が行われてもよい。また、角度特徴およびその強度は、上記の方法以外に、ＰｒｅｗｉｔｔのオペレータやＳｏｂｅｌのオペレータを用いて算出されてもよい。
【００３３】
算出された角度特徴および角度特徴の強度に基づいて、線分を配置する処理が行われ、線分を特定するデータ（以下、線分データという）がＲＡＭ１２に記憶される（Ｓ３）。角度特徴および角度特徴の強度に基づく線分の配置は、いかなる方法で行われてもよいが、例えば、特開２００１−２５９２６８に詳述されている方法を用いて行われる。よって、ここでは詳細な説明は省略し、概略のみを説明する。まず、元画像を構成する各画素を中心として、予め設定された長さを有し、Ｓ２で算出された角度特徴が示す方向に伸びる線分が配置され、その線分を特定するデータが作成される。ただし、画像全体としての特徴が効果的に反映されるように、元画像を構成する複数の画素のうち、Ｓ２で算出された角度特徴の強度が所定の閾値よりも大きい画素についてのみ、対応する線分が配置される。一方、角度特徴の強度が閾値以下だった画素については、周囲の画素の角度特徴を加味して算出された新たな角度特徴に基づいて線分が配置される。線分は、最終的に縫目に変換して、元画像を表現するため、特開２００１−２５９２６８に記載されているように、できるだけ元の画像全体を覆うように、また、できるだけ重なり無く配置される。
【００３４】
続いて、糸色決定処理が行われる（Ｓ４、図４）。糸色決定処理は、ミシン３による刺繍縫製のためにユーザが準備可能な複数の糸の色、つまり、ミシン３で使用可能な複数の糸の色のうち、実際に使用される複数の糸の色を決定する処理である。図４を参照して、糸色決定処理の詳細について説明する。なお、以下の説明では、ミシン３で使用可能な糸色を、使用可能糸色といい、ミシン３での刺繍縫製に実際に使用される糸色を、使用糸色という。
【００３５】
図４に示すように、糸色決定処理では、まず、Ｎ色の使用可能糸色を特定する情報が取得され、ＲＡＭ１２に記憶される（Ｓ１１）。本実施形態では、使用可能糸色を特定する情報は、少なくともＲＧＢ値を含むものとする。ＲＧＢ値の他に、糸番号等を含んでもよい。使用可能糸色を特定する情報は、予めＨＤＤ１５の設定値記憶エリア１５４に記憶された情報が取得されてもよいし、ユーザによって入力された情報が取得されてもよい。Ｎ色の使用可能糸色のうち、実際に使用される使用糸色の数Ｍが設定される（Ｓ１２）。使用糸色の数Ｍは、使用可能糸色の総数Ｎより小さい整数である。使用糸色の数Ｍは、例えば、糸交換の回数等を考慮して予め定められ、ＨＤＤ１５の設定値記憶エリア１５４に記憶された値が設定されてもよいし、ユーザによって入力された値が設定されてもよい。設定された使用糸色の数Ｍ（以下、設定数Ｍという）は、ＲＡＭ１２に記憶される。
【００３６】
Ｓ１１で取得されたＮ色の使用可能糸色のＲＧＢ値に基づき、Ｎ色の使用可能糸色のうち１色または２色で表現可能な色（以下、表現可能色という）が複数特定され、夫々のＲＧＢ値が算出される。そして、特定された複数の表現可能色と、表現可能色を表現するのに必要な使用可能糸色と、後述する使用頻度とが対応づけられたリスト（以下、表現可能色リストという）が作成され、ＲＡＭ１２に記憶される（Ｓ１３）。
【００３７】
本実施形態では、限られた数の色の糸でできるだけ多くの色を表現するために、２色の糸による混色表現を行うことを前提として、使用糸色が決定される。２色の糸による混色表現を用いてある領域を縫製した場合、その領域の色は、その２色の中間的な色である中間色に近似する。従って、Ｎ色の使用可能糸色のうち２色の混色表現を利用すれば、使用可能糸色Ｎ色と、Ｎ色のうち２色の中間色少なくとも１色が表現可能である。この場合の表現可能色の数Ｎ１は、計算式Ｎ１＝Ｎ（Ｎ＋１）／２で求められる。
【００３８】
なお、以下の説明および参照する図では、表現可能色のうち、使用可能糸色ｃｘと使用可能糸色ｃｙの２色の中間色を、ｃ［ｘｙ］のように表記する。また、表現可能色のうち、使用可能糸色ｃｘそのものは、使用可能糸色ｃｘと使用可能糸色ｃｘの中間色と同等であるから、ｃ［ｘｘ］と表記する。また、本実施形態では、簡単のため、ある領域を混色表現する場合、２色の糸が同一割合で使用されるものと仮定する。よって、使用可能糸色ｃｘのＲＧＢ値を（ｒｘ，ｇｘ，ｂｘ）、使用可能糸色ｃｙのＲＧＢ値を（ｒｙ，ｇｙ，ｂｙ）とすると、中間色ｃ［ｘｙ］のＲＧＢ値は、（（ｒｘ＋ｒｙ）／２，（ｇｘ＋ｇｙ）／２，（ｂｘ＋ｂｙ）／２）と算出される。
【００３９】
図５に例示する表現可能色リストは、使用可能糸色が、ｃ１、ｃ２、ｃ３およびｃ４の４色である場合に作成されるリストである。なお、実際には、使用可能糸色は通常１００色程度、使用糸色は１０色程度であると考えられるが、以下では、説明の簡単化のため、使用可能糸色が４色、使用糸色が２色の例を用いる場合がある。図５の表現可能色リストの例では、表現可能色の数Ｎ１は、１０（＝４（４＋１）／２）である。
【００４０】
前述のように、１０色の表現可能色のうち、ｃ［１１］、ｃ［２２］、ｃ［３３］、ｃ［４４］の４色は、夫々、使用可能糸色ｃ１、ｃ２、ｃ３、ｃ４そのものであり、ｃ１同士、ｃ２同士、ｃ３同士、ｃ４同士の組合せに対応する。よって、表現可能色リストには、対応する使用可能糸色として、夫々、これら４色の同色同士の組合せが記憶される。一方、ｃ［１２］、ｃ［１３］、ｃ［１４］、ｃ［２３］、ｃ［２４］、ｃ［３４］の６色は、使用可能糸色ｃ１、ｃ２、ｃ３、ｃ４のうち異なる２色の組合せの中間色である。よって、表現可能色リストには、対応する使用可能糸色として、各組合せを構成する異なる２色が記憶される。また、各表現可能色に対応付けて、後述するＳ１５の処理で算出される各表現可能色の使用頻度が記憶されるが、Ｓ１３の段階では、全ての表現可能色について、初期値のゼロ（０）が記憶される。なお、図５は、Ｓ１５で算出された使用頻度が記憶された例である。なお、図示はされていないが、表現可能色リストには、各使用可能糸色および各表現可能色のＲＧＢ値も含まれる。
【００４１】
特定されたＮ１色の表現可能色を代表色として、元画像が減色される（Ｓ１４）。すなわち、元画像を構成する複数の画素の各々の色が、その色に最も近い代表色に置き換えられる。具体的には、各画素のＲＧＢ値とＮ１色の表現可能色のＲＧＢ値とのＲＧＢ空間での距離が夫々求められ、各画素のＲＧＢ値が、距離が最小となる表現可能色のＲＧＢ値に置き換えられる。なお、ある画素のＲＧＢ値を（Ｒｔ、Ｇｔ、Ｂｔ）とし、ある表現可能色のＲＧＢ値を（Ｒａ、Ｇａ、Ｂａ）とした場合、その空間距離ｄは、以下の式で求められる。
ｄ＝√｛（Ｒｔ−Ｒａ）２＋（Ｇｔ−Ｇａ）２＋（Ｂｔ−Ｂａ）２｝
【００４２】
その後、各表現可能色の使用頻度が算出され、Ｓ１３でＲＡＭ１２に用意された表現可能色リストに記憶される（Ｓ１５）。例えば、減色処理で各表現可能色に置き換えられた画素の数がカウントされ、使用頻度として用いられる。前述の４色の例では、１０色の表現可能色の各々について、例えば、図５に示すように、使用頻度が算出され、記憶される。
【００４３】
続いて、Ｎ色の使用可能糸色からＭ色を選ぶ全ての組合せが特定され、組合せを特定する情報がＲＡＭ１２に記憶される（Ｓ２１）。このときの組合せの総数は、Ｎ！／｛Ｍ！（Ｎ−Ｍ）！｝である。よって、前述の例の４色の使用可能糸色ｃ１、ｃ２、ｃ３、ｃ４から２色を選ぶ場合、その組合せは、（ｃ１，ｃ２），（ｃ１，ｃ３），（ｃ１，ｃ４），（ｃ２，ｃ３），（ｃ２，ｃ４），（ｃ３，ｃ４）の６通りである。このように、組合せが特定されると、各組合せで表現可能な表現可能色が特定され、その使用頻度の合計値が算出される（Ｓ３１）。算出された合計値は、組合せを特定する情報と対応付けてＲＡＭ１２に記憶される。
【００４４】
例えば、図６に示すように、組合せ（ｃ１，ｃ２）を構成する使用可能糸色ｃ１、ｃ２のうち１色または２色で表現可能な表現可能色は、ｃ［１１］、ｃ［１２］、ｃ［２２］の３色である。図５に示すように、ｃ［１１］、ｃ［１２］、ｃ［２２］の使用頻度が、夫々、１０、５、７である場合、組合せ（ｃ１，ｃ２）に対応する使用頻度の合計値は、２２となる。同様にして、他の５通りの組合せ（ｃ１，ｃ３），（ｃ１，ｃ４），（ｃ２，ｃ３），（ｃ２，ｃ４），（ｃ３，ｃ４）についても使用頻度の合計値を算出すると、図６に示すように、夫々、３１、１４、３２、１４、２６となる。
【００４５】
Ｓ３１で算出された使用頻度の合計値に基づき、使用糸色が決定され、使用糸色を特定する情報がＲＡＭ１２に記憶される（Ｓ３２）。具体的には、Ｓ３１で全ての組合せについて算出された使用頻度の合計値のうち、最大値となる使用頻度に対応する組合せの使用可能糸色が、使用糸色として決定される。各組合せに含まれる使用可能糸色はＭ色であるから、これにより、設定数Ｍの使用糸色を決定することができる。図６に示す例では、使用頻度の最大値３２に対応する組合せは（ｃ２，ｃ３）であるから、使用可能糸色ｃ２およびｃ３の２色が、使用糸色として決定されることになる。使用糸色が決定されると、ＣＰＵ１１は、図４に示す糸色決定処理を終了し、図３に示すメイン処理に戻る。
【００４６】
図３に示すように、メイン処理では、糸色決定処理（Ｓ４）に続き、Ｓ３で配置された線分の色を決定する配色処理が行われる（Ｓ５）。具体的には、線分の各々について、前述のように決定されたＭ色の使用糸色から、元画像の色を反映した１色が選択され、その線分の色として決定される。元画像の色を反映した１色を選択する方法として、例えば、特開２００１−２５９２６８に詳述されている方法を採用することができる。
【００４７】
具体的には、元画像を構成する複数の画素を順に注目画素として、次の処理が行われる。元画像において、注目画素を中心とする所定の範囲が、元画像の色を参照する範囲（参照領域）として設定される。そして、元画像の参照領域内の色の平均値と、注目画素を中心とする参照領域と同じサイズの領域に配置された線分に対して既に決定された色の平均値が等しくなるように、注目画素に対応する線分の色が決定される。つまり、元画像の色と既に決定された線分の色とに基づいて、線分の各々の色が決定されていく。線分の色は、使用糸色から選択されるので、ここで決定される色は、実際の縫目の色となる。
【００４８】
配色された複数の線分のうち、同じ使用糸色の線分を順に接続して、使用糸色毎の線分データを作成する処理が行われる（Ｓ６）。例えば、まず、ある使用糸色の複数の線分のうち、元画像の最も左端に近い線分が、接続順が１番目の線分とされる。この線分の２つの端点のうち一方が始点とされ、他方が終点とされる。次に、同じ使用糸色の他の線分のうち、１番目の線分の終点に最も近い位置にある端点を有する線分が、接続先である２番目の線分とされる。同様にして、順に、既に接続された線分の終点に、同じ色の線分の最も近い位置にある端点を接続していく。その後、使用糸色毎に接続された線分群を、近い端点同士で接続することにより、全ての線分が接続される。そして、接続された全ての線分の端点の位置（座標）、接続順、および使用糸色を示すデータである接続線分データが作成される。
【００４９】
接続線分データに基づき、刺繍データが作成される（Ｓ７）。具体的には、線分の端点の座標が、ミシン３に固有の座標系の座標に変換されることで、針落ち点の座標が算出される。また、線分の接続順が針落ち点の縫い順とされる。これにより、針落ち点の座標と、縫い順と、使用糸色を示す刺繍データが作成される。刺繍データの作成が終了すると、図３に示す刺繍データ作成処理は終了する。
【００５０】
以上に説明したように、第一実施形態の刺繍データ作成装置１によれば、Ｎ色の使用可能糸色と、Ｎ色の使用可能糸色のうち２色の中間色とが表現可能色として特定される。そして、表現可能色を代表色として元画像を減色した場合の各表現可能色の使用頻度が算出される。よって、元画像に、使用可能糸色そのものに近い色がなかったとしても、中間色に近い色が多く含まれれば、その中間色の使用頻度は高くなる。従って、使用可能糸色のうち１色だけでなく２色を用いて混色表現をする場合を含めて、元画像の色を表現するのに適した使用糸色を選択することができる。特に、本実施形態では、Ｎ色の使用可能糸色から、Ｍ色を選ぶ組合せ全てのうち、使用頻度の合計値が最大となる組合せに含まれるＭ色の使用可能糸色が、Ｍ色の使用糸色として決定される。従って、元画像の色に最も近い色を表現できる使用糸色を選択することができる。
【００５１】
第一実施形態において、図４の糸色決定処理のＳ１２で、使用糸色の数Ｍを設定するＣＰＵ１１は、本発明の「糸色数設定手段」に相当する。Ｓ１３で表現可能色リストを作成するＣＰＵ１１は、「表現可能色特定手段」に相当する。Ｓ１５で、「第一使用頻度」である各表現可能色の使用頻度を算出するＣＰＵ１１は、「第一使用頻度算出手段」に相当する。Ｓ３１〜Ｓ３２の処理を行うＣＰＵ１１は、「使用糸色決定手段」に相当する。そのうちＳ３１で、各組合せに対応する使用頻度の合計値（第二合計値）を算出するＣＰＵ１１は、「第二合計値算出手段」に相当する。Ｓ３２で、使用糸色を決定するＣＰＵ１１は、「第三決定手段」に相当する。
【００５２】
＜第二実施形態＞
以下に、図５〜図７を参照して、第二実施形態について説明する。第二実施形態および後述する第三、第四実施形態に係る刺繍データ作成装置１およびミシン３の構成は、第一実施形態と同一であるため、以下ではその説明は省略する。また、第二実施形態および後述する第三、第四実施形態におけるメイン処理は、第一実施形態の処理とは、糸色決定処理（図３のＳ４、図４）の内容において異なるのみである。従って、以下では、第一実施形態の処理と同一部分については同一のステップ番号を付して説明を省略または簡略化し、第一実施形態とは異なる処理の詳細について説明する。
【００５３】
図７に示すように、第二実施形態の糸色決定処理は、使用可能糸色を特定する情報が取得され、Ｎ１色の表現可能色が特定されて、元画像における各表現可能色の使用頻度が算出されるまでの処理（Ｓ１１〜Ｓ１５）は、第一実施形態の処理（図４参照）と同じである。その後、第一実施形態では、Ｎ色の使用可能糸色のうちＭ色を選ぶ全ての組合せが特定されるが、第二実施形態では、組合せの数を減らすために、組合せの対象となる使用可能糸色の数を絞り込むことが試みられる。具体的には、まず、Ｓ１５で算出された使用頻度が高い順に、Ｎ１（＝Ｎ（Ｎ＋１）／２）色の表現可能色のうち、Ｍ１色の表現可能色が選択される（Ｓ１６）。なお、Ｍ１は、Ｎ１よりも小さい整数である。数Ｍ１は、予め定められ、ＨＤＤ１５の設定値記憶エリア１５４に記憶された値が使用されてもよいし、ユーザによって入力された値が使用されてもよい。
【００５４】
続いて、Ｎ色の使用可能糸色のうち、選択されたＭ１色の表現可能色を１色または２色で表現するために必要な使用可能糸色が、候補糸色として選択され、その情報がＲＡＭ１２に記憶される（Ｓ１７）。候補糸色の数Ｎ２は、Ｍ１色が全て中間色であり、且つ、中間色の元となる使用可能糸色が全て異なる場合に、最大値であるＭ１の２倍の値をとる。ただし、候補糸色の数Ｎ２は使用可能糸色の総数Ｎ以下である。よって、Ｓ１６で選択される表現可能色の数Ｍ１を使用可能糸色の総数Ｎの二分の一未満とすれば（Ｍ１＜Ｎ／２）、確実に候補糸色の数Ｎ２をＮよりも減らすことができる。例えば、使用可能糸色の総数Ｎが１００色の場合、表現可能色の数Ｎ１は、５，０５０色となる。使用頻度が高い順に、５，０５０色の表現可能色から選択される表現可能色の数Ｍ１を１０とすれば、これら１０色の表現可能色に対応する候補糸色の数Ｎ２は、最大で２０色となる。
【００５５】
また、選択されたＭ１色の表現可能色が、同じ使用可能糸色を含む場合にも、候補糸色の数Ｎ２を、Ｎよりも減らすことができる場合がある。例えば、図５に示す１０色の表現可能色から、使用頻度が高い順に、ｃ［３３］、ｃ［１１］、ｃ［２３］の３色が選択された場合、候補糸色はｃ１、ｃ２、ｃ３の３色である。つまり、候補糸色の数Ｎ２は３であるから、使用可能糸色の総数Ｎである４よりも小さくなる。
【００５６】
Ｎ２色の候補糸色からＭ色を選ぶ全ての組合せが特定され、その情報がＲＡＭ１２に記憶される（Ｓ２２）。このときの組合せの総数は、Ｎ２！／｛Ｍ！（Ｎ２−Ｍ）！｝である。例えば、候補糸色を絞り込まずに、１００色の使用可能糸色全てから１０色を選ぶ組合せは、１７．３兆通りある。一方、上記の例のように表現可能色を絞り込むことで、１００色の使用可能糸色を２０色の候補糸色まで絞り込めれば、使用糸色の設定数Ｍが１０の場合、その組合せは１８４，７５６通りとなる。つまり、組合せの数を大幅に低減できる。
【００５７】
組合せが特定されたら、第一実施形態と同様、各組合せで表現可能な表現可能色が特定され、その使用頻度の合計値が算出される（Ｓ３１）。そして、使用頻度の合計値のうち、最大値となる使用頻度に対応する組合せの使用可能糸色が、使用糸色として決定され（Ｓ３２）、図７に示す糸色決定処理は終了する。
【００５８】
以上に説明したように、第二実施形態の糸色決定処理では、組合せに使用される使用可能糸色の数Ｎを、Ｎ１色の表現可能色のうち、使用頻度が高い方からＭ１色の表現可能色に応じて、Ｎよりも小さい数Ｎ２まで減らすことができる場合がある。この場合、Ｎ２色からＭ色を選ぶ組合せの数は、Ｎ色の使用可能糸色からＭ色を選ぶ組合せの数よりも少ない。組合せの数が低減されれば、使用糸色を決定するための計算時間が低減できる。具体的には、Ｓ２２で組合せを特定するための計算時間や、Ｓ３１で各組み合わせに対応する使用頻度の合計値の計算時間を低減することができる。特に、使用可能糸色の総数Ｎと設定数Ｍとの差が大きい場合には、組合せの数の低減効果は顕著である。このように、第二実施形態の糸色決定処理によれば、元画像の色に近い色を表現できる使用糸色を、より効率的に選択することができる。
【００５９】
第二実施形態において、図７に示す糸色決定処理のＳ１６で、Ｍ１色の表現可能色を選択するＣＰＵ１１は、「表現可能色選択手段」に相当する。Ｓ１７で、Ｍ１色の表現可能色に対応するＮ２色の候補糸色（第一候補糸色）を選択するＣＰＵ１１は、「第一候補選択手段」に相当する。
【００６０】
＜第三実施形態＞
以下に、図５、図８および図９を参照して、第三実施形態について説明する。前述の通り、以下では、主として、第一実施形態とは異なる糸色決定処理の詳細について説明する。
【００６１】
図８に示すように、第三実施形態の糸色決定処理も、使用可能糸色を特定する情報が取得され、Ｎ１色の表現可能色が特定されて、元画像における各表現可能色の使用頻度が算出されるまでの処理（Ｓ１１〜Ｓ１５）は、第一実施形態の処理（図４参照）と同じである。その後、第三実施形態では、第二実施形態と同様、組合せの対象となる使用可能糸色を絞り込むことが試みられる。ただし、第三実施形態では、使用可能糸色を絞り込む方法が、第二実施形態とは異なっている。
【００６２】
具体的には、まず、Ｓ１５で算出されたＮ１色の表現可能色の使用頻度に基づき、Ｎ色の使用可能糸色各々の使用頻度が算出される（Ｓ１８）。例えば、Ｓ１５で、図５に示すように、１０色の表現可能色の使用頻度が算出されたとする。この場合、ｃ１、ｃ２、ｃ３、ｃ４の４色の使用可能糸色の使用頻度は、夫々、次のように算出できる。使用可能糸色ｃ１は、４色の表現可能色ｃ［１１］、ｃ［１２］、ｃ［１３］、ｃ［１４］に使用され、夫々の使用頻度は、１０、５、６、１である。これら４色のうち、ｃ［１１］はｃ１とｃ１の中間色と同等であるから、本実施形態では、ｃ１は２回使用されるとみなされる。よって、ｃ１の使用頻度は、３２（＝１０＋１０＋５＋６＋１）と算出される。同様にして、ｃ２、ｃ３、ｃ４の使用頻度は、図９に示すように、夫々、３３、５４、１９と算出される。
【００６３】
算出された使用頻度が高い順に、Ｎ色の使用可能糸色のうちＮ３色が、候補糸色として選択され、その情報がＲＡＭ１２に記憶される（Ｓ１９）。なお、候補糸色の数Ｎ３は、設定数Ｍ以上、且つ、使用可能糸色の総数Ｎ未満の整数である。数Ｎ３は、予め定められ、ＨＤＤ１５の設定値記憶エリア１５４に記憶された値が使用されてもよいし、ユーザによって入力された値が使用されてもよい。図９の例で４色の使用可能糸色のうち３色が候補糸色として選択される場合、使用頻度５４、３３、３２に対応するｃ３、ｃ２、ｃ１が選択される。
【００６４】
続いて、Ｎ３色の候補糸色からＭ色を選ぶ全ての組合せが特定され、その情報がＲＡＭ１２に記憶される（Ｓ２３）。このときの組合せの総数は、Ｎ３！／｛Ｍ！（Ｎ３−Ｍ）！｝である。よって、例えば、表現可能色の使用頻度に基づいて算出された使用可能糸色の使用頻度に基づき、１００色の使用可能糸色を２０色の候補糸色まで絞り込めば、使用糸色の設定数Ｍが１０の場合、その組合せは１８４，７５６通りとなる。従って、第二実施形態と同様、候補糸色の数を絞り込むことで、計算時間を低減することができる。
【００６５】
なお、第二実施形態では、候補糸色の数Ｎ２は、使用頻度に基づいて絞り込まれたＭ１色の表現可能色が同じ使用可能糸色を含む割合に応じて変動する。つまり、Ｍ１色の表現可能色が全て異なる使用可能糸色２色の中間色の場合等には、候補糸色の数Ｎ２は、使用可能糸色の総数Ｎから変動しない可能性がある。例えば、ｃ１、ｃ２、ｃ３、ｃ４の４色の使用可能糸色に対応する１０色の表現可能色のうち、使用頻度が高い２色の表現可能色としてｃ［１２］およびｃ［３４］が選択された場合、候補糸色は、ｃ１、ｃ２、ｃ３、ｃ４の４色になるため、使用可能糸色と変わりない。本実施形態では、Ｎ色の使用可能糸色から、使用頻度の高い順に候補糸色をＮ３色選ぶことができるので、より確実に、候補糸色の数Ｎ３を減らすことができる。その結果、組合せの数を確実に減らすことができる。
【００６６】
組合せが特定されたら、第一実施形態と同様、各組合せで表現可能な表現可能色が特定され、その使用頻度の合計値が算出される（Ｓ３１）。そして、使用頻度の合計値のうち、最大値となる使用頻度に対応する組合せの使用可能糸色が、使用糸色として決定され（Ｓ３２）、図８に示す糸色決定処理は終了する。
【００６７】
以上に説明したように、第三実施形態の糸色決定処理では、Ｎ１色の表現可能色の使用頻度に基づき、Ｎ色の使用可能糸色各々の使用頻度が算出される。そして、組み合せに使用される使用可能糸色が、算出された使用頻度が高い方から順に、Ｎ色よりも少ないＮ３色に絞り込まれるので、組合せの数を確実に低減できる。なお、Ｓ１９で選択される候補糸色の数Ｎ３を減らすほど、Ｓ２３およびＳ３１における計算時間を低減することができる。例えば、候補糸色の数Ｎ３を使用糸色の設定数Ｍと同一にすれば、Ｎ３色の候補糸色からＭ色を選ぶ組合せは１通りだけとなるので、Ｓ２３では、組合せを特定するための計算時間は不要となる。更に、Ｓ３１では、この１通りの組合せについてのみ、使用頻度の合計値が算出されるので、Ｎ色からＭ色を選ぶ全ての組合せについて合計値が算出される場合に比べ、計算時間が低減される。このように、第三実施形態の糸色決定処理によれば、元画像の色に近い色を表現できる使用糸色を効率的に選択することができる。
【００６８】
第三実施形態において、図８に示す糸色決定処理のＳ１８で、「第二使用頻度」である各使用可能糸色の使用頻度を算出するＣＰＵ１１は、「第二使用頻度算出手段」に相当する。Ｓ１９で、使用頻度が高いＮ３色の候補糸色（第二候補糸色）を選択するＣＰＵ１１は、「第二候補選択手段」に相当する。Ｓ３１で、各組合せに対応する使用頻度の合計値（第三合計値）を算出するＣＰＵ１１は、「第三合計値算出手段」に相当する。Ｓ３２で、使用糸色を決定するＣＰＵ１１は、「第四決定手段」に相当する。
【００６９】
＜第四実施形態＞
以下に、図１０〜図１１を参照して、第四実施形態について説明する。前述の通り、以下では、主として、第一実施形態とは異なる糸色決定処理の詳細について説明する。
【００７０】
図１０に示すように、第四実施形態の糸色決定処理も、使用可能糸色を特定する情報が取得され、Ｎ１色の表現可能色が特定されて、元画像における各表現可能色の使用頻度が算出されるまでの処理（Ｓ１１〜Ｓ１５）は、第一実施形態の処理（図４参照）と同じである。その後、第二実施形態および第三実施形態では、組合せの対象となる使用可能糸色が絞り込まれた後、そのうちＭ色を選ぶ全ての組合せ毎に、使用頻度の合計値が算出され、合計値が最大となる組合せに対応する使用可能糸色が使用糸色として決定される。一方、第四実施形態では、まず、２色または１色の使用糸色が決定され、残りの使用可能糸色のうち、既に決定されている使用糸色とあわせて使用した場合に、最も使用頻度が高くなる使用可能糸色が、Ｍ色に達するまで、１色ずつ順に使用糸色として追加されていく。
【００７１】
具体的には、まず、既に決定された使用糸色の数をカウントする変数Ｔ１にゼロ（０）が設定される（Ｓ４１）。続いて、Ｓ１５で算出された使用頻度が最大である表現可能色ｃ［ｈｉ］が特定される（Ｓ４２）。そして、この色に対応する使用可能糸色ｃｈおよびｃｉが使用糸色として決定され、これらを特定する情報がＲＡＭ１２に記憶される（Ｓ４３）。なお、ｈおよびｉは、いずれも１からＮまでの整数のうちいずれか一つである。前述したように、表現可能色は、使用可能糸色のうち１色または２色で表現される色である。ｈとｉが同一の場合には（Ｓ４４：ＹＥＳ）、ｃ［ｈｉ］は、同じ使用可能糸色同士の中間色を意味し、使用可能糸色のうちの１色に他ならない。よって、この場合、使用糸色として決定されたのは１色であるから、変数Ｔ１に１が加算される（Ｓ４５）。一方、ｈとｉが同一でない場合には（Ｓ４４：ＮＯ）、ｃ［ｈｉ］は、２色の使用可能糸色の中間色を意味する。よって、この場合、使用糸色として決定されたのは２色であるから、変数Ｔ１に２が加算される（Ｓ４６）。
【００７２】
図１１に示すように、続いて、第一注目糸色ｃｉＴ１を表す変数ｉＴ１に１が設定されてＲＡＭ１２に記憶され、Ｎ色の使用可能糸色のうち１色目の使用可能糸色ｃ１が、第一注目糸色ｃｉＴ１に設定される（Ｓ５１）。なお、変数ｉＴ１は１からＮまでの整数である。第一注目糸色ｃｉＴ１は、使用可能糸色のうち、既に決定された使用糸色に加えて使用糸色とするか否かが判断される対象となる１色である。
【００７３】
第一注目糸色ｃｉＴ１の使用頻度の合計値を示す変数ＳＵＭ［ｉＴ１］にゼロ（０）が設定され、変数ｉＴ１の値と対応付けてＲＡＭ１２に記憶される（Ｓ５２）。第一注目糸色ｃｉＴ１を示す情報が、決定された使用糸色の情報としてＲＡＭ１２に記憶されているか否かが判断される（Ｓ５３）。第一注目糸色ｃｉＴ１が既に使用糸色とされている場合は（Ｓ５３：ＹＥＳ）、この色の処理は完了している。よって、変数ｉＴ１が、使用可能糸色の総数Ｎ未満であるか否かが判断される（Ｓ６０）。変数ｉＴ１がＮ未満である場合（Ｓ６０：ＹＥＳ）、まだ第一注目糸色ｃｉＴ１とされていない未処理の使用可能糸色が残っている。よって、変数ｉＴ１に１が加算されて（Ｓ６１）、次の使用可能糸色が第一注目糸色ｃｉＴ１とされ、処理はＳ５２に戻る。
【００７４】
Ｓ５３において、第一注目糸色ｃｉＴ１が使用糸色とされていないと判断された場合は（Ｓ５３：ＮＯ）、第二注目糸色ｃｉＴ２を表す変数ｉＴ２に１が設定されてＲＡＭ１２に記憶され、Ｎ色の使用可能糸色のうち１色目の使用可能糸色ｃ１が、第二注目糸色ｃｉＴ２に設定される（Ｓ５４）。なお、変数ｉＴ２は１からＮまでの整数である。本実施形態では、第二注目糸色ｃｉＴ２が、既に決定された使用糸色か、第一注目糸色ｃｉＴ１と同色の場合に、第一注目糸色ｃｉＴ１と第二注目糸色ｃｉＴ２との混色表現が考慮される。そこで、まず、変数ｉＴ２と変数ｉＴ１とが同一か否か、つまり、第一注目糸色ｃｉＴ１と第二注目糸色ｃｉＴ２は同じ色であるか否かが判断される（Ｓ５５）。
【００７５】
変数ｉＴ２と変数ｉＴ１とが同一の場合（Ｓ５５：ＹＥＳ）、ＲＡＭ１２に記憶されている第一注目糸色ｃｉＴ１の使用頻度の合計値を示す変数ＳＵＭ［ｉＴ１］に、図１０のＳ１５で算出されたＮ１色の表現可能色の使用頻度のうち、第一注目糸色ｃｉＴ１と第二注目糸色ｃｉＴ２の中間色ｃ［ｉＴ１ｉＴ２］の使用頻度が加算され、変数ＳＵＭ［ｉＴ１］が更新される（Ｓ５７）。なお、この場合の中間色ｃ［ｉＴ１ｉＴ２］は、まだ使用糸色とされていない使用可能糸色のうちの１色である。変数ＳＵＭ［ｉＴ１］が更新されると、処理はＳ５８に進む。
【００７６】
変数ｉＴ２が変数ｉＴ１とは同一でない場合（Ｓ５５：ＮＯ）、第二注目糸色ｃｉＴ２が、既に決定された使用糸色としてＲＡＭ１２に記憶されているか否かが判断される（Ｓ５６）。第二注目糸色ｃｉＴ２が使用糸色とされている場合は（Ｓ５６：ＹＥＳ）、ＲＡＭ１２に記憶されている変数ＳＵＭ［ｉＴ１］に、第一注目糸色ｃｉＴ１と第二注目糸色ｃｉＴ２の中間色ｃ［ｉＴ１ｉＴ２］の使用頻度が加算され、変数ＳＵＭ［ｉＴ１］が更新される（Ｓ５７）。なお、この場合の中間色ｃ［ｉＴ１ｉＴ２］は、まだ使用糸色とされていない使用可能糸色のうちの１色と、既に決定された使用糸色の１色との中間色である。変数ＳＵＭ［ｉＴ１］が更新されると、処理はＳ５８に進む。
【００７７】
第二注目糸色ｃｉＴ２が使用糸色とされていない場合は（Ｓ５６：ＮＯ）、使用頻度が変数ＳＵＭ［ｉＴ１］に加算されることなく、処理はＳ５８に進む。Ｓ５８では、変数ｉＴ２が、使用可能糸色の総数Ｎ未満であるか否かが判断される。変数ｉＴ２が、Ｎ未満である場合（Ｓ５８：ＹＥＳ）、まだ第二注目糸色ｃｉＴ２とされていない未処理の使用可能糸色が残っている。よって、変数ｉＴ２に１が加算されて（Ｓ５９）、次の使用可能糸色が第二注目糸色ｃｉＴ２とされ、処理はＳ５５に戻る。
【００７８】
前述のようにして、Ｓ５５〜Ｓ５９の処理が繰り返され、変数ｉＴ２が、使用可能糸色の総数Ｎ未満ではなくなると（Ｓ５８：ＮＯ）、変数ｉＴ１が、使用可能糸色の総数Ｎ未満であるか否かが判断される（Ｓ６０）。変数ｉＴ１がＮ未満の場合（Ｓ６０：ＹＥＳ）、変数ｉＴ１に１が加算されて（Ｓ６１）、次の使用可能糸色が第一注目糸色ｃｉＴ１とされ、処理はＳ５２に戻る。この時点で、ＲＡＭ１２には、処理が完了した第一注目糸色ｃｉＴ１および既に決定されている使用糸色のうち１色または２色で表現可能な表現可能色の使用頻度の合計値が記憶されていることになる。
【００７９】
前述のようにしてＳ５２〜Ｓ６１の処理が繰り返され、順に、まだ使用糸色とされていない使用可能糸色および既に決定されている使用糸色のうち１色または２色で表現可能な表現可能色の使用頻度の合計値が算出され、ＲＡＭ１２に記憶されていく。なお、この過程で、第一注目糸色ｃｉＴ１を示す変数ｉＴ１の方が第二注目糸色ｃｉＴ２を示す変数ｉＴ２よりも大きくなった場合（ｉＴ１＞ｉＴ２）、Ｓ５７では、ＲＡＭ１２に記憶されている変数ＳＵＭ［ｉＴ１］には、中間色ｃ［ｉＴ２ｉＴ１］の使用頻度が加算されればよい。
【００８０】
Ｎ色の使用可能糸色全てが第一注目糸色ｃｉＴ１とされて、変数ｉＴ１がＮ未満でなくなると（Ｓ６０：ＮＯ）、変数ｉＴ１の値に夫々対応付けてＲＡＭ１２に記憶されている変数ＳＵＭ［ｉＴ１］のうち、最大値が特定され、対応する使用可能糸色ｃｉＴ１が、使用糸色として決定され、その情報がＲＡＭ１２に記憶される（Ｓ６２）。使用糸色の数を示す変数Ｔ１に１が加算される（Ｓ６３）。変数Ｔ１が設定数（使用糸色の数）Ｍ未満の場合は（Ｓ６４：ＹＥＳ）、処理はＳ５１に戻り、再び１色目の使用可能糸色ｃ１が第一注目糸色とされる（Ｓ５１）。そして、前述のようにして、残りの使用可能糸色のうち、既に決定されたＴ１色の使用糸色とあわせて使用した場合に、最も使用頻度が高くなる使用可能糸色を使用糸色として決定する処理が繰り返される（Ｓ５１〜Ｓ６４）。その結果、既に決定された使用糸色の数Ｔ１が、設定数Ｍに達し、Ｍ未満でなくなると（Ｓ６４：ＮＯ）、図１０および図１１に示す糸色決定処理は終了する。
【００８１】
図５に示すように、ｃ１、ｃ２、ｃ３、ｃ４の４色の使用可能糸色について各表現可能色に対応する使用頻度が算出された後、２色の使用糸色を決定する例を、本実施形態の糸色決定処理に適用すると、次のようになる。まず、最大使用頻度（１５）の表現可能色ｃ［３３］に対応する使用可能糸色ｃ３、ｃ３が使用糸色として決定される（図１０のＳ４３）。ｃ［３３］は、同じ色同士の中間色に相当するので（Ｓ４４：ＹＥＳ）、決定された使用糸色の数Ｔ１は、１とされる（Ｓ４５）。
【００８２】
第一注目糸色ｃ１は使用糸色ではないので（図１１のＳ５３：ＮＯ）、第二注目糸色ｃ１が設定される（Ｓ５４）。Ｓ５５〜Ｓ５９の１巡目の処理では、第一注目糸色ｃ１と第二注目糸色ｃ１は同じ色なので（Ｓ５５：ＹＥＳ）、表現可能色ｃ［１１］の使用頻度１０が、使用頻度の合計値（ＳＵＭ［１］）として記憶される（Ｓ５７）。２巡目の処理では、第二注目糸色ｃ２は、第一注目糸色ｃ１と同じ色でも、既に決定された使用糸色でもないので（Ｓ５５：ＮＯ、Ｓ５６：ＮＯ）、使用頻度の合計値は更新されない。３巡目の処理では、第二注目糸色ｃ３は、既に決定された使用糸色なので（Ｓ５６：ＹＥＳ）、１巡目で算出された使用頻度１０に、表現可能色ｃ［１３］の使用頻度６が加算され、使用頻度の合計値が１６に更新される（Ｓ５７）。４巡目の処理では、第二注目糸色ｃ４は、第一注目糸色ｃ１と同じ色でも、既に決定された使用糸色でもないので（Ｓ５５：ＮＯ、Ｓ５６：ＮＯ）、使用頻度の合計値は更新されない。
【００８３】
次に設定される第一注目糸色ｃ２も使用糸色ではないので（Ｓ５３：ＮＯ）、第二注目糸色ｃ１が設定される（Ｓ５４）。Ｓ５５〜Ｓ５９の１巡目の処理では、第二注目糸色ｃ１は、第一注目糸色ｃ２と同じ色でも、既に決定された使用糸色でもないので（Ｓ５５：ＮＯ、Ｓ５６：ＮＯ）、使用頻度の合計値は算出されない。２巡目の処理では、第二注目糸色ｃ２は、第一注目糸色ｃ２と同じ色なので（Ｓ５５：ＹＥＳ）、表現可能色ｃ［２２］の使用頻度７が、使用頻度の合計値（ＳＵＭ［２］）として記憶される（Ｓ５７）。３巡目の処理では、第二注目糸色ｃ３は、既に決定された使用糸色なので（Ｓ５６：ＹＥＳ）、２巡目で算出された使用頻度７に、表現可能色ｃ［２３］の使用頻度１０が加算され、使用頻度の合計値が１７に更新される（Ｓ５７）。４巡目の処理では、第二注目糸色ｃ４は、第一注目糸色ｃ２と同じ色でも、既に決定された使用糸色でもないので（Ｓ５５：ＮＯ、Ｓ５６：ＮＯ）、使用頻度の合計値は更新されない。
【００８４】
次に設定される第一注目糸色ｃ３は使用糸色なので（Ｓ５３：ＹＥＳ）、すぐに次の第一注目糸色ｃ４が設定される（Ｓ６１）。第一注目糸色ｃ４は使用糸色ではないので（Ｓ５３：ＮＯ）、第二注目糸色ｃ１が設定される（Ｓ５４）。Ｓ５５〜Ｓ５９の１巡目の処理では、第二注目糸色ｃ１は、第一注目糸色ｃ４と同じ色でも、既に決定された使用糸色でもないので（Ｓ５５：ＮＯ、Ｓ５６：ＮＯ）、使用頻度の合計値は算出されない。２巡目の処理では、第二注目糸色ｃ２も、第二注目糸色ｃ４と同じ色でも、既に決定された使用糸色でもないので（Ｓ５５：ＮＯ、Ｓ５６：ＮＯ）、使用頻度の合計値は算出されない。３巡目の処理では、第二注目糸色ｃ３は、既に決定された使用糸色なので（Ｓ５６：ＹＥＳ）、表現可能色ｃ［３４］の使用頻度８が使用頻度の合計値（ＳＵＭ［４］）として記憶される（Ｓ５７）。４巡目の処理では、第二注目糸色ｃ４は、第一注目糸色ｃ４と同じ色なので（Ｓ５５：ＹＥＳ）、３巡目で算出された使用頻度８に、表現可能色ｃ［４４］の使用頻度３が加算され、使用頻度の合計値が１１に更新される（Ｓ５７）。
【００８５】
ｃ１〜ｃ４の４色全てが第一注目糸色とされたので（Ｓ６０：ＮＯ）、使用頻度の合計値ＳＵＭ［１］、ＳＵＭ［２］、ＳＵＭ［４］の値１６、１７、１１が比較され、最大値１７に対応する使用可能糸色ｃ２が、新たに使用糸色として決定される（Ｓ６２）。決定された使用糸色の数Ｔ１が２となり（Ｓ６３）、設定数Ｍに達するので（Ｓ６４：ＮＯ）、糸色決定処理は終了する。このようにして、２色の使用糸色ｃ３、ｃ２が順に決定されることになる。
【００８６】
以上に説明したように、第四実施形態の糸色決定処理では、まず、Ｎ色の使用可能糸色のうち、使用頻度が最も高い表現可能色に対応する１色または２色の使用可能糸色が、使用糸色として決定される。その後、残りの使用可能糸色から、単独で使用される場合および既に決定された使用糸色との混色表現に使用される場合の使用頻度の合計値が最も高くなる使用可能糸色を使用糸色として決定する処理が、使用糸色が設定数Ｍに達するまで繰り返される。
【００８７】
例えば、使用頻度の合計値を算出する必要がある組合せは、最初に使用糸色として１色が決定された場合、２色目を決定する処理では（Ｎ−１）通り、３色目を決定する処理では（Ｎ−２）通り、のようになり、Ｍ色目を決定する処理では、（Ｎ−Ｍ＋１）通りとなる。従って、使用頻度の合計値を算出する必要がある組合せの総数は、（Ｍ−２）｛（Ｎ−２）＋（Ｎ−Ｍ＋１）｝／２である。例えば、１００色の使用可能糸色から１０色の使用糸色を決定する場合、この組合せの数は、７５６となる。従って、Ｎ色からＭ色を選ぶ組合せについて合計値が算出される場合（１７．３兆通り）や、Ｎ色よりも少ない数の候補糸色からＭ色を選ぶ組合せについて合計値が算出される場合（１８４，７５６通り）よりも、組合せ数を大幅に低減することができる。このように、第四実施形態の糸色決定処理によれば、使用頻度の合計値を算出する必要がある使用可能糸色の組合せの数を抑制しつつ、使用可能糸色の１色または２色の混色表現で元の画像を表現するのに適した使用糸色を選択することができる。
【００８８】
なお、第四実施形態の糸色決定処理では、第二実施形態および第三実施形態のように候補糸色を選択する必要がなく、また、中間色を含む使用頻度の合計値が算出されているので、より画像全体を表現するのに適した使用糸色を選択することができる。
【００８９】
第四実施形態において、図１０および図１１に示す糸色決定処理のＳ４３で、使用頻度が最も高い表現可能色に対応する使用可能糸色を使用糸色として決定する算出するＣＰＵ１１は、「第一決定出手段」に相当する。Ｓ５７で、既に決定された使用糸色以外の使用可能糸色の各々について、使用頻度の合計値（第一合計値）を算出するＣＰＵ１１は、「第一合計値算手段」に相当する。Ｓ６２で、使用頻度の合計値が最大となる使用可能糸色を、使用糸色として決定するＣＰＵ１１は、「第二決定手段」に相当する。
【００９０】
本発明は上記実施形態に限定されるものではなく、種々の変更が可能である。例えば、上記実施形態では、表現可能色がどのような色になるかは考慮せず、一律で、Ｎ１（＝Ｎ（Ｎ＋１）／２）色の表現可能色が特定され、表現可能色リストが作成されている。しかしながら、混色表現の効果が低いと考えられる中間色は、表現可能色リストに含めない処理が行われてもよい。図１２を参照して、この場合に行われる表現可能色リスト作成処理について説明する。図１２に示す表現可能色リスト作成処理は、第一実施形態〜第四実施形態の糸色決定処理（図４、図７、図８、図１０）のＳ１３の処理に代えて行われればよい。
【００９１】
図１２に示すように、まず、第一使用可能糸色ｃｉを表す変数ｉに１が設定されてＲＡＭ１２に記憶され、Ｎ色の使用可能糸色のうち１色目の使用可能糸色ｃ１が、第一使用可能糸色ｃｉに設定される（Ｓ８１）。なお、変数ｉは１からＮまでの整数である。更に、第二使用可能糸色ｃｊを表す変数ｊに１が設定されてＲＡＭ１２に記憶され、Ｎ色の使用可能糸色のうち１色目の使用可能糸色ｃ１が、第二使用可能糸色ｃｊに設定される（Ｓ８２）。なお、変数ｊは１からＮまでの整数である。第一使用可能糸色ｃｉおよび第二使用可能糸色ｃｊは、使用可能糸色のうち、これらの中間色を表現可能色リストに含めるか否か、つまり、これら２色の混色表現を行うか否かが判断される２色である。
【００９２】
変数ｉと変数ｊとが同一であるか否かが判断される（Ｓ８３）。最初の処理では、変数ｉと変数ｊはいずれも１で同一である（Ｓ８３：ＹＥＳ）。つまり、第一使用可能糸色ｃ１および第二使用可能糸色ｃ１は同じ使用可能糸色である。この場合、中間色ｃ［ｉｊ］、つまりｃ［１１］は使用可能糸色ｃ１そのものであるから、ｃ［１１］と、対応する使用可能糸色ｃ１、ｃ１が、表現可能色リスト（図５参照）に追加される（Ｓ９３）。変数ｊが、使用可能糸色の総数Ｎ未満か否か、つまり、第一使用可能糸色ｃｉと全ての使用可能糸色の組み合わせが処理されたか否かが判断される（Ｓ９４）。変数ｊがＮ未満であれば（Ｓ９４：ＹＥＳ）、変数ｊに１が加算され（Ｓ９５）、処理はＳ８３に戻る。
【００９３】
変数ｊが変数ｉとは同一でない場合（Ｓ８３：ＮＯ）、第一使用可能糸色ｃｉおよび第二使用可能糸色ｃｊは異なる２色の使用可能糸色である。この場合、第一使用可能糸色ｃｉと第二使用可能糸色ｃｊとのＲＧＢ空間における距離ｄｉｊが算出される（Ｓ８４）。なお、第一使用可能糸色ｃｉのＲＧＢ値を（Ｒｉ、Ｇｉ、Ｂｉ）とし、第二使用可能糸色ｃｊのＲＧＢ値を（Ｒｊ、Ｇｊ、Ｂｊ）とした場合、その空間距離ｄｉｊは、以下の式で求められる。
ｄｉｊ＝√｛（Ｒｉ−Ｒｊ）２＋（Ｇｉ−Ｇｊ）２＋（Ｂｉ−Ｂｊ）２｝
【００９４】
算出された距離ｄｉｊが所定の閾値ｄ１未満か否かが判断される（Ｓ８４）。閾値ｄ１は、予め設定され、ＨＤＤ１５の設定値記憶エリア１５４に記憶されている。閾値ｄ１は、例えば、異なる２色が人間の目にはある程度似ていると認識される範囲の限界値を、ＲＧＢ空間における距離で表したものが採用されればよい。距離ｄｉｊが閾値ｄ１未満の場合（Ｓ８５：ＹＥＳ）、第一使用可能糸色ｃｉと第二使用可能糸色ｃｊとはある程度似た色であるから、これら２色の中間色は、第一使用可能糸色ｃｉと第二使用可能糸色ｃｊの各々に更に似た色となるはずである。従って、これら２色で混色表現を行う効果は低いと考えられるため、中間色ｃ［ｉｊ］は表現可能色リストに追加されることなく、処理はＳ９４に進む。距離ｄｉｊが閾値ｄ１未満ではない場合（Ｓ８４：ＮＯ）、中間色ｃ［ｉｊ］が特定される（Ｓ８６）。具体的には、第一実施形態のＳ１３の処理について説明したように、第一使用可能糸色ｃｉと第二使用可能糸色ｃｊの夫々のＲＧＢ値から、中間色ｃ［ｉｊ］のＲＧＢ値が算出される。
【００９５】
続いて、中間色ｃ［ｉｊ］が、有彩色２色から得られる灰色であるか否かを判断する処理が行われる（Ｓ８７〜Ｓ９２）。計算上は灰色の中間色が得られても、実際には、２色の有彩色の糸で混色表現を行っても灰色に近似した色を表現するのは難しい。つまり、混色表現を行う効果が低いと考えられる。従って、中間色ｃ［ｉｊ］が有彩色２色から得られる灰色と判断された場合には、中間色ｃ［ｉｊ］を表現可能色リストには含めず、そうでない場合には、表現可能色リストに含める処理が行われる。
【００９６】
一般的には、次の４つの条件が全て満たされる場合、有彩色２色の中間色は計算上実質的に灰色である。第一の条件は、２色のＲＧＢ値が同一ではないことである。第二の条件は、ＲＧＢ空間における中央値（１２７．５，１２７．５，１２７．５）と、中間色との距離がある程度近いことである。第三および第四の条件は、２色のうち一方の色のＲＧＢ値の最大値および最小値の差がある程度大きいこと、および、他方の色のＲＧＢ値の最大値および最小値の差もある程度大きいことである。なお、前述のＳ８３の処理により、第一の条件を満たす場合にのみ、Ｓ８７以降の処理が行われるので、Ｓ８７〜Ｓ９２では、第二、第三、第四の条件について、順に判断が行われる。
【００９７】
まず、中間色ｃ［ｉｊ］とＲＧＢ空間における中央値（１２７．５，１２７．５，１２７．５）との距離ｄｃが算出され（Ｓ８７）、距離ｄｃが所定の閾値ｄ２よりも大きいか否かが判断される（Ｓ８８）。ＲＧＢ空間における中央値（１２７．５，１２７．５，１２７．５）は、灰色に対応する。閾値ｄ２は、予め設定され、ＨＤＤ１５の設定値記憶エリア１５４に記憶されている。閾値ｄ２は、閾値ｄ１と同様に定められればよい。閾値ｄ１と閾値ｄ２とは同一でも異なっても構わない。距離ｄｃが所定の閾値ｄ２よりも大きい場合（Ｓ８８：ＹＥＳ）、第二の条件が満たされておらず、中間色ｃ［ｉｊ］はそれほど灰色に近い色ではない。よって、中間色ｃ［ｉｊ］が表現可能色リストに追加され（Ｓ９３）、処理はＳ９４に進む。
【００９８】
距離ｄｃが所定の閾値ｄ２未満でない場合（Ｓ８８：ＮＯ）、第二の条件は満たされており、中間色ｃ［ｉｊ］はある程度灰色に近い色である。更に、第一使用可能糸色ｃｉのＲＧＢ値の最大値と最小値の差ｄｉが算出され（Ｓ８９）、差ｄｉが閾値ｄ３未満か否かが判断される（Ｓ９０）。閾値ｄ３は、予め設定され、ＨＤＤ１５の設定値記憶エリア１５４に記憶されている。無彩色の場合、ＲＧＢ値の全ての値は同一であり、有彩色の場合、ＲＧＢ値は少なくとも２つが互いに異なる値をとる。つまり、ＲＧＢ値の最大値と最小値に差がある場合、その色は有彩色である。ただし、その差が微小であれば、無彩色に近い色となるので、閾値ｄ３として、例えば、有彩色であると明確に認識できる程度の距離が設定されればよい。差ｄｉが閾値ｄ３未満の場合（Ｓ９０：ＹＥＳ）、第三の条件が満たされておらず、第一使用可能糸色ｃｉは無彩色とみなせる。よって、中間色ｃ［ｉｊ］が表現可能色リストに追加され（Ｓ９３）、処理はＳ９４に進む。
【００９９】
差ｄｉが閾値ｄ３未満でない場合（Ｓ９０：ＮＯ）、第三の条件は満たされており、第一使用可能糸色ｃｉは有彩色とみなせる。よって、更に、第二使用可能糸色ｃｊのＲＧＢ値の最大値と最小値の差ｄｊが算出され（Ｓ９１）、差ｄｊが閾値ｄ３未満か否かが判断される（Ｓ９２）。差ｄｊが閾値ｄ３未満の場合（Ｓ９２：ＹＥＳ）、第四の条件が満たされておらず、第二使用可能糸色ｃｊは無彩色とみなせるので、中間色ｃ［ｉｊ］が表現可能色リストに追加され（Ｓ９３）、処理はＳ９４に進む。差ｄｊが閾値ｄ３未満でない場合（Ｓ９２：ＮＯ）、第四の条件は満たされており、第二使用可能糸色ｃｊは有彩色とみなせる。この場合、前述の４つの条件が全て満たされていることになるので、中間色ｃ［ｉｊ］は表現可能色リストに追加されることなく、処理はＳ９４に進む。
【０１００】
Ｓ９４では、変数ｊが使用可能糸色の総数Ｎ未満であれば（Ｓ９４：ＹＥＳ）、変数ｊに１が加算され（Ｓ９５）、処理はＳ８３に戻る。そして、変数ｊがＮに達するまで、前述のようにＳ８３〜Ｓ９５の処理が繰り返される。変数ｊがＮに達し、第一使用可能糸色ｃｉと全ての使用可能糸色の組み合わせが処理されると（Ｓ９４：ＮＯ）、変数ｉが使用可能糸色の総数Ｎ未満か否かが判断される（Ｓ９６）。変数ｉがＮ未満であれば（Ｓ９６：ＹＥＳ）、変数ｉに１が加算され（Ｓ９７）、処理はＳ８２に戻る。そして、変数ｉがＮに達するまで、前述のようにＳ８２〜Ｓ９７の処理が繰り返される。変数ｊがＮに達し、全ての使用可能糸色が第一使用可能糸色ｃｉとして処理されると（Ｓ９７：ＮＯ）、図１２に示す表現可能色リスト作成処理は終了する。このように、図１２に示す表現可能色リスト作成処理によれば、ある程度の混色表現の効果が得られる中間色のみを表現可能色リストに含めることができるので、元画像の色を表現するのに更に適した使用糸色を決定することができる。
【０１０１】
上記実施形態に、更に他の変更が加えられてもよい。例えば、図８に示す第三実施形態の糸色決定処理のＳ１９において、Ｎ色の使用可能糸色から、使用頻度の高い順にＮ３色の候補糸色を選択する際、既に選択された候補糸色からＲＧＢ空間において所定距離以内にある使用可能糸色は候補糸色としない処理が行われてもよい。この場合、選択される候補糸色同士が一定の距離を保つので、元画像全体の色を表現するのにより適した使用糸色を決定することができる。また、図１０および図１１に示す第四実施形態の糸色決定処理で、同様の処理を行ってもよい。具体的には、図１１のＳ５６とＳ５７の間に、第一注目糸色ｃｉＴ１と第二注目糸色ｃｉＴ２との距離が所定距離を超えるか否かを判断するステップを追加し、この距離が所定距離を超える場合にはＳ５７に進んで使用頻度の合計値を更新し、超えない場合にはそのままＳ５８に進む処理とすればよい。
【符号の説明】
【０１０２】
１  刺繍データ作成装置
３  ミシン
１１  ＣＰＵ
【図１】
2012239772.tif 000003
【図２】
2012239772.tif 000004
【図３】
2012239772.tif 000005
【図４】
2012239772.tif 000006
【図５】
2012239772.tif 000007
【図６】
2012239772.tif 000008
【図７】
2012239772.tif 000009
【図８】
2012239772.tif 000010
【図９】
2012239772.tif 000011
【図１０】
2012239772.tif 000012
【図１１】
2012239772.tif 000013
【図１２】
2012239772.tif 000014