(57)【要約】【課題】  ユーザが指定する重要度の高いオブジェクトの情報が削除されることなくリサイズされた画像データを生成する。【解決手段】    画像処理を行う画像処理装置において第１の画像データに含まれるオブジェクトの種別に対応づけた像域を特定する第２の画像データと指定されるオブジェクトの重要度とに基づいて像域重要度を調整した第１の分布データを生成する。そして、生成された第１の分布データの各画素の画素値を指定される隙間値で拡散した第２の分布データを生成したら、第１の分布データと第２の分布データとを合わせて第３の分布データを生成する。そして、生成される第３の分布データと、第１の画像データの各画素の濃度変化に基づく重要度分布データとを加算して得られる分布データに所定の画素を削除または追加してリサイズされる画像データを生成することを特徴とする。【選択図】  図３
2016092663.tif 000002
【特許請求の範囲】
【請求項１】
画像処理を行う画像処理装置であって、
第１の画像データの各画素の濃度変化に基づいて重要度分布データを生成する第１の生成手段と、
前記第１の画像データに含まれるオブジェクトの種別に対応づけた像域を特定する第２の画像データと指定されるオブジェクトの重要度とに基づいて像域重要度を調整した第１の分布データを生成する第２の生成手段と、
前記第１の分布データの各画素の画素値を指定される隙間値で拡散した第２の分布データを生成する第３の生成手段と、
前記第１の分布データと第２の分布データとを合わせて第３の分布データを生成する第４の生成手段と、
前記第３の分布データと前記重要度分布データとを加算して得られる分布データに所定の画素を削除または追加してリサイズされる画像データを生成する第５の生成手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
画像処理を行う画像処理装置であって、
第１の画像データの各画素の濃度変化に基づいて重要度分布データを生成する第１の生成手段と、
前記第１の画像データに含まれるオブジェクトの種別に対応づけた像域を特定する第２の画像データと保護すべきオブジェクトの種別とに基づいて像域重要度を調整した第１の分布データを生成する第２の生成手段と、
前記第１の分布データの各画素の画素値を指定される隙間値で拡散した第２の分布データを生成する第３の生成手段と、
前記第１の分布データと第２の分布データとを合わせて第３の分布データを生成する第４の生成手段と、
前記第３の分布データと前記重要度分布データとを加算して得られる分布データに所定の画素を削除または追加してリサイズされる画像データを生成する第５の生成手段と、
を備えることを特徴とする画像処理装置。
【請求項３】
前記第５の生成手段は、シーカービング法に従い分布データに所定の画素を削除または追加した画像データを生成することを特徴とする請求項１または２記載の画像処理装置。
【請求項４】
前記オブジェクトは、文字、グラフィック、イメージ、ラインであることを特徴とする請求項１または２記載の画像処理装置。
【請求項５】
前記第２の画像データに対する重要度を文字、グラフィック、イメージ、ラインで指定することを特徴とする請求項１または２記載の画像処理装置。
【請求項６】
前記隙間値および前記オブジェクトの重要度の指定を受け付ける第１の受付手段を備えることを特徴とする請求項１記載の画像処理装置。
【請求項７】
前記保護すべきオブジェクトの種別の指定を受け付ける第２の受付手段を備えることを特徴とする請求項２記載の画像処理装置。
【請求項８】
画像処理を行う画像処理装置の画像処理方法であって、
第１の画像データの各画素の濃度変化に基づいて重要度分布データを生成する第１の生成工程と、
前記第１の画像データに含まれるオブジェクトの種別に対応づけた像域を特定する第２の画像データと指定されるオブジェクトの重要度とに基づいて像域重要度を調整した第１の分布データを生成する第２の生成工程と、
前記第１の分布データの各画素の画素値を指定される隙間値で拡散した第２の分布データを生成する第３の生成工程と、
前記第１の分布データと第２の分布データとを合わせて第３の分布データを生成する第４の生成工程と、
前記第３の分布データと前記重要度分布データとを加算して得られる分布データに所定の画素を削除または追加してリサイズされる画像データを生成する第５の生成工程と、
を備えることを特徴とする画像処理装置の画像処理方法。
【請求項９】
画像処理を行う画像処理装置の画像処理方法であって、
第１の画像データの各画素の濃度変化に基づいて重要度分布データを生成する第１の生成工程と、
前記第１の画像データに含まれるオブジェクトの種別に対応づけた像域を特定する第２の画像データと保護すべきオブジェクトの種別とに基づいて像域重要度を調整した第１の分布データを生成する第２の生成工程と、
前記第１の分布データの各画素の画素値を指定される隙間値で拡散した第２の分布データを生成する第３の生成工程と、
前記第１の分布データと第２の分布データとを合わせて第３の分布データを生成する第４の生成工程と、
前記第３の分布データと前記重要度分布データとを加算して得られる分布データに所定の画素を削除または追加してリサイズされる画像データを生成する第５の生成工程と、
を備えることを特徴とする画像処理装置の画像処理方法。
【請求項１０】
請求項８または９に記載の画像処理装置の画像処理方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理装置の画像処理方法、及びプログラムに関するものである。
【背景技術】
【０００２】
従来、画像処理装置における画像処理において、画像データ中のコンテンツの重要度を考慮して画像サイズの変更を行うリターゲティング技術として、シームカービングを用いた方法が知られている。また、シームカービングを用いてバランス良くシーム削除を行う方法として、特許文献１にて開示されている方法が提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開2010-187376号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１の技術を用いれば、画像データ中で重要度が高いと判断された部分を残し、重要度が低いと判断された部分を削除することで、画像サイズを変更することが可能になる。
しかし、画像中の重要度判断の方法として画像中の濃度勾配などを用いているため、文字であるか、あるいは文字以外であるかといった重要度判断は行っていない。そのため、必ずしも文字部分の重要度が高いと判断されないケースもあり、そのような場合に、画像中の文字部分が大きく変形したり、時として文字部分が大きく削除されてしまう場合があった。
【０００５】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、ユーザが指定する重要度の高いオブジェクトの情報が削除されることなくリサイズされた画像データを生成できる仕組みを提供することである。
【課題を解決するための手段】
【０００６】
上記目的を達成する本発明の画像処理装置は以下に示す構成を備える。
画像処理を行う画像処理装置であって、第１の画像データの各画素の濃度変化に基づいて重要度分布データを生成する第１の生成手段と、前記第１の画像データに含まれるオブジェクトの種別に対応づけた像域を特定する第２の画像データと指定されるオブジェクトの重要度とに基づいて像域重要度を調整した第１の分布データを生成する第２の生成手段と、前記第１の分布データの各画素の画素値を指定される隙間値で拡散した第２の分布データを生成する第３の生成手段と、前記第１の分布データと第２の分布データとを合わせて第３の分布データを生成する第４の生成手段と、前記第３の分布データと前記重要度分布データとを加算して得られる分布データに所定の画素を削除または追加してリサイズされる画像データを生成する第５の生成手段と、を備えることを特徴とする。
【発明の効果】
【０００７】
ユーザが指定する重要度の高いオブジェクトの情報が削除されることなくリサイズされた画像データを生成できる。
【図面の簡単な説明】
【０００８】
【図１】画像処理装置の一構成例を示すブロック図である。
【図２】図１に示したディスプレイに表示されるＵＩ画面を示す図である。
【図３】画像処理装置の制御方法を説明するフローチャートである。
【図４】画像処理装置で処理される画像処理例を示す図である
【図５】図１に示したディスプレイに表示されるＵＩ画面を示す図である。
【図６】画像処理装置の制御方法を説明するフローチャートである。
【図７】画像処理装置で処理される画像処理例を示す図である
【発明を実施するための形態】
【０００９】
次に本発明を実施するための最良の形態について図面を参照して説明する。
＜システム構成の説明＞
〔第１実施形態〕
まず、本発明の実施形態にかかわる画像処理装置の全体構成を、図１を参照しながら説明する。
図１は、本実施形態における画像処理装置１００の一構成例を示すブロック図である。
【００１０】
図１において、画像処理装置１００は、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、不揮発性ストレージ１０４、ネットワークインタフェース１０５、ディスプレイ１０６、およびそれらをつなぐシステムバス１０７から構成される。ＣＰＵ１０１は画像処理装置１００を制御するための中央処理装置である。
ＲＡＭ１０２は、ＣＰＵ１０１が動作するためのシステムワークメモリである。ＲＯＭ１０３はＢＩＯＳ  ＲＯＭであり、起動プログラムと起動設定値が格納されている。不揮発性ストレージ１０４はハードディスクドライブやフラッシュメモリから構成される記憶装置であり、基本ソフトウェア（ＯＳ）や各種処理のためのプログラム、さらに一時保存データを格納する。ネットワークインタフェース１０５は、ネットワーク１１０に接続して外部装置との間で画像データや、各種情報の入出力を行う。ディスプレイ１０６はタッチパネル等の入力装置を備えた表示装置で構成されており、画像処理装置１００を操作するためのユーザインタフェースである。以上のユニットがシステムバス１０７上に配置されている。
【００１１】
画像処理装置１００上では、不揮発性ストレージ１０４に保存されている画像データ変換プログラムが、ＲＡＭ１０２にロードされＣＰＵ１０１上で動作する。このプログラムは、不揮発性ストレージ１０４に保存されている画像データを読出し、所定の画像変換処理を行い、生成された変換後画像データを不揮発性ストレージ１０４に保存する。
また必要に応じてディスプレイ１０６に表示を行う。画像処理装置１００上では、本実施形態で示す画像サイズ変更を行う画像データ変換プログラムだけでなく、不揮発性ストレージ１０４に保存されている他のプログラムを実行することもある。その一例は、ラスタ画像データに対して画像解析処理を行って像域情報画像データを生成する処理である。また他の例としては、ページ記述言語（ＰＤＬ）データをレンダリングすることにより、ラスタ画像データと像域情報画像データを同時に生成する処理である。
また、画像処理装置１００は、ネットワーク１１０経由で、図示されていないコンピュータ機器と接続され、画像データやＰＤＬデータの送受信を行う場合もある。
【００１２】
図２は、図１に示したディスプレイ１０６に表示されるＵＩ画面を示す図である。本例は、ユーザが画像処理のパラメータを確認し変更する際に、画像処理装置１００にて動作する画像データ変換プログラムがディスプレイ１０６に表示する、操作ＵＩの一例である。当該操作ＵＩにより、画像サイズ変更の処理がされる画像データに対して、着目する属性に対する重要度の設定を受付ることができる。
【００１３】
図２において、操作ＵＩ上部には、シームカービング処理によって画像サイズを変更する際の、幅および高さのサイズ変更率を指定するＵＩが配置されている。本実施形態では縮小変倍のみに対応した処理を行うため、ユーザは操作ＵＩ上で１００以下の整数を指定することができる。
【００１４】
操作ＵＩ下部には、像域成分毎の重要度調整パラメータを指定するＵＩが配置されている。ユーザは画像データの属性に対応するＴｅｘｔ（テキスト）／Ｇｒａｐｈｉｃ（グラフィック）／Ｉｍａｇｅ（イメージ）／Ｌｉｎｅ（ライン）の各像域成分毎に重要度調整パラメータを確認することができる。さらに重要度を増加させる［＋］ボタンと、重要度を減少させる［−］ボタンが配置され、ユーザがいずれかのボタンを押下することで重要度調整パラメータを変更する。重要度調整パラメータは、符号付き８ｂｉｔで表現される整数である。さらに像域成分毎に、画像データ中の隙間保持を行うか否かを指定するチェックボックスＵＩが配置され、ユーザがチェックボックスＵＩを押下する度に、隙間保持パラメータはＯＮ／ＯＦＦ切替される。なお、図２の操作ＵＩでは、ユーザがＴｅｘｔ／Ｌｉｎｅの重要度を「＋」に設定した例である。
【００１５】
次に図３、図４を用いて、画像処理装置１００において実行される画像データ変換プログラムよる、画像データのサイズ変更処理を説明する。
図３は、本実施形態を示す画像処理装置の制御方法を説明するフローチャートである。本例は、図１に示した画像処理装置１００内のＣＰＵ１０１において実行される、画像データ変換プログラムの動作例である。
図４は、本実施形態を示す画像処理装置で処理される画像処理例を示す図である。以下、画像データのサイズ変更処理に関わる画像データおよびパラメータデータを例示し、処理の過程をについて図３に基づいて説明する。
【００１６】
まず、Ｓ３０１で、ＣＰＵ１０１は、不揮発性ストレージ１０４に保存されている画像データを取得する。ここで取得する画像データは、図４に示すように、ラスタ画像データ４０１と像域を特定する像域情報画像データ４０２の組で構成されている。
ラスタ画像データ４０１は、１画素あたりＲ／Ｇ／Ｂそれぞれ８ｂｉｔ深度の色情報を保持し、幅×高さの二次元の画素構成で表現されるカラー画像データである。像域情報画像データ４０２は前記ラスタ画像データ４０１と幅および高さが同一な二次元データである。ラスタ画像データ４０１の各画素の属性に対応してＴｅｘｔ／Ｉｍａｇｅ／Ｇｒａｐｈｉｃ／Ｌｉｎｅのいずれの像域成分であるかを示す各１ｂｉｔの４像域成分を保持する。
像域情報画像データ４０２は、ＣＰＵ１０１がラスタ画像データ４０１に対して画像解析処理を行って生成される場合と、ＣＰＵ１０１がページ記述言語（ＰＤＬ）データをレンダリングすることにより、ラスタ画像データ４０１と同時に生成される場合がある。
【００１７】
Ｓ３０２では、ＣＰＵ１０１は、ラスタ画像データ４０１からシームカービング処理に必要な重要度エネルギー分布データ（重要度分布データ）４０３を作成する。重要度エネルギー分布データ４０３は、ラスタ画像データ４０１と幅および高さが同一な二次元データであり、ラスタ画像データ４０１の各画素に対応して８ｂｉｔ深度で表現される重要度を保持する。重要度エネルギー分布データ４０３は、ラスタ画像データ４０１内の画素濃度変化の分布を元に生成される。Ｓ３０３では、ＣＰＵ１０１が、ユーザが操作する図２にて説明した操作ＵＩにより設定される像域重要度調整パラメータ４０５を取得する。像域重要度調整パラメータ４０５は、Ｔｅｘｔ／Ｉｍａｇｅ／Ｇｒａｐｈｉｃ／Ｌｉｎｅの４つの属性（種別）に対応するように構成されている。
【００１８】
さらにＳ３０４では、ＣＰＵ１０１は、像域情報画像データ４０２と像域重要度調整パラメータ４０５から、像域重要度調整分布データ４０６を生成する。具体的には、像域情報画像データ４０２中の各像域成分１ｂｉｔで表現される４像域成分に、像域重要度調整パラメータ４０５中の対応する像域成分の符号付８ｂｉｔ値を掛け合わせる。
これにより、像域情報画像データ４０２と幅および高さが同一な符号付８ｂｉｔ×４像域成分の二次元データとして、像域重要度調整分布データ４０６をＲＡＭ１０２上に生成する。
Ｓ３０５では、ＣＰＵ１０１が図２に示した操作ＵＩにより設定される隙間保持パラメータ４０８を取得する。図２に示す操作ＵＩでは、チェックマークを入れることで、属性毎に隙間値を保持するか否かを設定することができるように構成されている。
【００１９】
さらにＳ３０６では、ＣＰＵ１０１は、Ｓ３０５で取得した隙間保持パラメータ４０８中で値が「１」となっている像域成分に対応する像域重要度調整分布データ４０６の画素に対して、その画素値を周辺に拡散させる処理を行う。ここで、画素拡散処理には、誤差拡散による方法やガウスぼかしによる方法、高周波成分を除去する方法などを用いることができる。
なお、像域重要度調整分布データ４０６の画素ごとにその像域成分を確認し、隙間保持パラメータ４０８が１となっていた像域成分であれば、画素拡散処理の対象とする。また、ＣＰＵ１０１は、通常の画素拡散処理では、元の画素の値が低下するが、Ｓ３０６での画素拡散を行う際には元の画素値を保存しておき、画素拡散処理が完了した後、元の画素値を回復する処理を行うことで、拡散済み像域重要度調整分布データ４０９を生成する。
【００２０】
続いてＳ３０７では、ＣＰＵ１０１がＳ３０２にて生成した重要度エネルギー分布データ４０３に、Ｓ３０６で生成した拡散済み像域重要度調整分布データ４０９を加算もしくは減算する。ここで、重要度エネルギー分布データ４０３は、符号なし８ｂｉｔ二次元データであり、拡散済み像域重要度調整分布データ４０９は符号付８ｂｉｔ×４像域成分からなる二次元データであるため、その値域は異なる。
そのため、ＣＰＵ１０１は、拡散済み像域重要度調整分布データ４０９の各画素の各像域成分の値を２倍し、各像域成分の値を重要度エネルギー分布データ４０３に加算もしくは減算する。そして、ＣＰＵ１０１は、加算した結果が２５５を超える場合は、その値を２５５とする。この処理により、重要度エネルギー分布データ４０３に、像域重要度調整パラメータ４０５と隙間保持パラメータ４０８の設定が反映される。
【００２１】
Ｓ３０８では、ＣＰＵ１０１が図２に示した操作ＵＩから、幅および高さのサイズ変更率を取得する。以降、Ｓ３０９からＳ３１７の処理にて、シームカービングの手法を用いて、ラスタ画像データ４０１と像域情報画像データ４０２の画像サイズ変更を行う。
【００２２】
Ｓ３０９では、ＣＰＵ１０１は、現在のラスタ画像データ４０１の幅の画素数が、Ｓ３０８にて取得した幅のサイズ変更率に達しているかを判断する。幅のサイズ変更率に達しているとＣＰＵ１０１が判断した場合は、Ｓ３１３に進む。
一方、幅のサイズ変更率に達していないとＣＰＵ１０１が判断した場合は、続く、Ｓ３１０にて、ＣＰＵ１０１は、重要度調整と隙間保持の設定が反映された重要度エネルギー分布データ４０３中の縦方向で最小エネルギー経路（シーカービング法）となるシーム（Ｓｅａｍ）の探索を行う。
その後、Ｓ３１１では、ＣＰＵ１０１は、ラスタ画像データ４０１と重要度エネルギー分布データ４０３中から、上記探索された縦シームに相当する画素を削除し、幅方向の画像サイズを１画素小さくする。さらにＳ３１２にて、ＣＰＵ１０１は、像域情報画像データ４０２から、上記探索された縦シームに相当する画素を削除し、幅方向の画像サイズを１画素小さくし、Ｓ３１３へ進む。
【００２３】
Ｓ３１３では、ＣＰＵ１０１は、現在のラスタ画像データ４０１の高さの画素数が、Ｓ３０８にて取得した高さのサイズ変更率に達しているかを判断する。ここで、高さのサイズ変更率に達しているとＣＰＵ１０１が判断した場合は、Ｓ３１７に進む。
一方、高さのサイズ変更率に達していないとＣＰＵ１０１が判断した場合は、続くＳ３１４にて、重要度調整と隙間保持の設定が反映された重要度エネルギー分布データ４０３中の横方向で最小エネルギー経路となるシームの探索を行う。
その後、Ｓ３１５では、ＣＰＵ１０１は、ラスタ画像データ４０１と重要度エネルギー分布データ４０３から、上記探索された横シームに相当する画素を削除し、高さ方向の画像サイズを１画素小さくする。さらにＳ３１６にて、ＣＰＵ１０１は、像域情報画像データ４０２から、上記探索された横シームに相当する画素を削除し、高さ方向の画像サイズを１画素小さくし、Ｓ３０９に進む。
【００２４】
Ｓ３１７では、ＣＰＵ１０１は、ラスタ画像データ４０１の幅の画素数が、Ｓ３０８にて取得した幅のサイズ変更率に達しているかを判断する。ここで、幅のサイズ変更率に達していないとＣＰＵ１０１が判断した場合は、Ｓ３１０に進む。
このようにして、幅と高さがＳ３０８にて取得したサイズ変更率に達するまで、幅方向と高さ方向へのシームカービング処理を繰り返す。
一方、Ｓ３１７で幅のサイズ変更率に達しているとＣＰＵ１０１が判断した場合は、Ｓ３１８にて、ＣＰＵ１０１は、サイズ変更が完了したラスタ画像データおよび像域情報画像データを、不揮発性ストレージ１０４に保存する。
【００２５】
なお、図４中のラスタ画像データ４０４、ラスタ画像データ４０７およびラスタ画像データ４１０は、本発明の手法を用いない従来手法でのシームカービング処理結果と、本発明の手法を適用したシームカービング処理結果を比較した例である。
従来手法の重要度エネルギー分布データ４０３のみを用いて、最小エネルギー経路となるシームの探索を行うと、結果としてラスタ画像データ４０４が生成される。ラスタ画像データ４０４は、文字の輪郭が大きく崩れる部分（本例では、「ラ」）があるため、本来文字として可読できない画像データあるいは誤った文字として可読される画像データとなってしまう。
これに対し、像域情報画像データ４０２と像域重要度調整パラメータ４０５を用いて、Ｔｅｘｔ像域の部分に対して最大の重要度加算を行うと、シームカービング処理結果としてラスタ画像データ４０７が得られる。
この例では、文字輪郭の崩れは抑制されるが、文字の間隔や文字内の空白部分の画素が削除されるため、文字形状と文字並びのバランスが悪い。さらに隙間保持パラメータ４０８を用いて画素拡散を行った拡散済み像域重要度調整分布データ４０９を用いてシームカービング処理を行うと、文字形状と文字並びのバランスが良好にリサイズされたラスタ画像データ４１０が得られる。
【００２６】
〔第２実施形態〕
第１実施形態においては、重要度エネルギー分布データ４０３を像域成分ごとに調整することで、最小エネルギー経路となるシームの探索時に、対象像域成分に相当する画素にシームが通る可能性を低下させることができた。
【００２７】
本実施形態では、最小エネルギー経路となるシームの探索時に、対象像域成分に相当する画素をシーム探索の対象から外す処理を行うことで、対象像域成分の画素削除を全く行わない方法について説明する。
【００２８】
図５は、図１に示したディスプレイ１０６に表示されるＵＩ画面を示す図である。本例は、ユーザが画像処理のパラメータを確認し変更する際に、画像処理装置１００にて動作する画像データ変換プログラムがディスプレイ１０６に表示する、操作ＵＩの一例である。
図５において、操作ＵＩ上部には、シームカービング処理によって画像サイズを変更する際の、幅および高さのサイズ変更率の目標値を指定するＵＩ画面が表示されている。本実施形態では縮小変倍のみに対応した処理を行うため、ユーザは操作ＵＩ上で、幅と高さについて１００以下の整数を指定することができる。
【００２９】
操作ＵＩ下部には、像域成分毎に保護オブジェクトとするか否かを指定するチェックボックスＵＩが配置されている。ユーザはＴｅｘｔ／Ｇｒａｐｈｉｃ／Ｉｍａｇｅ／Ｌｉｎｅの各像域成分毎に保護オブジェクト指定パラメータの状態を確認することができる。
さらに、ユーザがチェックボックスＵＩを押下する度に、保護オブジェクト指定パラメータはＯＮ／ＯＦＦが切替される。保護オブジェクト指定パラメータは、Ｔｅｘｔ／Ｇｒａｐｈｉｃ／Ｉｍａｇｅ／Ｌｉｎｅの像域成分毎に各１ｂｉｔの４像域成分を保持する。さらに像域成分毎に、画像中の隙間保持を行うか否かを指定するチェックボックスＵＩが配置され、ユーザがチェックボックスＵＩを押下する度に、隙間保持パラメータはＯＮ／ＯＦＦ  切替される。
【００３０】
次に図６、図７を用いて、画像処理装置１００において実行される画像データ変換プログラムによる、画像データのサイズ変更処理を説明する。
図６は、本実施形態を示す画像処理装置の制御方法を説明するフローチャートである。本例は、図１に示した画像処理装置１００内のＣＰＵ１０１において実行される、画像データ変換プログラムの動作例である。
図７は、本実施形態を示す画像処理装置で処理される画像処理例を示す図である。以下、画像データのサイズ変更処理に関わる画像データおよびパラメータデータを例示し、処理の過程について説明する。
【００３１】
まず、画像処理装置１００で実行される画像データ変換プログラムを実行するＣＰＵ１０１は、Ｓ６０１で、不揮発性ストレージ１０４に保存されている画像データを取得する。ここで取得する画像データは、ラスタ画像データ７０１と像域情報画像データ７０２の組で構成されている。
Ｓ６０２では、ＣＰＵ１０１は、ラスタ画像データ７０１からシームカービング処理に必要な重要度エネルギー分布データ７０３を作成する。重要度エネルギー分布データ７０３は、ラスタ画像データ７０１と幅および高さが同一な二次元データであり、ラスタ画像データ７０１の各画素に対応して、８ｂｉｔ深度で表現される重要度と、１ｂｉｔで表現される像域保護ｂｉｔの合計９ｂｉｔを保持する。Ｓ６０３では、ＣＰＵ１０１は、図５に示した操作ＵＩから、保護オブジェクト指定パラメータ７０５を取得する。
【００３２】
さらにＳ６０４では、ＣＰＵ１０１は、像域情報画像データ７０２と保護オブジェクト指定パラメータ７０５から、像域保護指定分布データ７０６を生成する。像域情報画像データ７０２中の各像域成分１ｂｉｔで表現される４像域成分に、保護オブジェクト指定パラメータ７０５中の対応する像域成分の１ｂｉｔ値を掛け合わせる。これにより、像域情報画像データ７０２と幅および高さが同一な１ｂｉｔ×４像域成分の二次元データとして、像域保護指定分布データ７０６を生成する。
【００３３】
Ｓ６０５では、ＣＰＵ１０１は、図５に示した操作ＵＩから、隙間保持パラメータ７０８を取得する。さらにＳ６０６では、ＣＰＵ１０１は、Ｓ６０５で取得した隙間保持パラメータ７０８中で値が「１」となっている像域成分に対応する像域保護指定分布データ７０６の画素に対して、その画素値を周辺に拡散させる処理を行う。
ここで、画素拡散処理には、対象画素の周辺にノイズを付与する方法などを用いることができる。
また、ＣＰＵ１０１は、像域保護指定分布データ７０６の画素ごとにその像域成分を確認し、隙間保持パラメータ７０８が１となっていた像域成分であれば、画素拡散処理の対象とすることで、拡散済み像域保護指定分布データ７０９を生成する。
【００３４】
続いて、Ｓ６０７では、ＣＰＵ１０１は、Ｓ６０２にて生成した重要度エネルギー分布データ７０３の画素中の像域保護ｂｉｔに、Ｓ６０６で生成した拡散済み像域保護指定分布データ７０９を付加する。この処理により、重要度エネルギー分布データ７０３に、保護オブジェクト指定パラメータ７０５と隙間保持パラメータ７０８の設定が反映される。
【００３５】
Ｓ６０８では、ＣＰＵ１０１は、図５に示した操作ＵＩから、幅および高さのサイズ変更率の目標値を取得する。Ｓ６０９では、ＣＰＵ１０１は、現在のラスタ画像データ７０１の幅の画素数が、Ｓ７０８にて取得した幅のサイズ変更率の目標値に達しているかを判断する。ここで、幅のサイズ変更率の目標値に達しているとＣＰＵ１０１が判断した場合は、Ｓ６１２に進む。
一方、幅のサイズ変更率の目標値に達していないとＣＰＵ１０１が判断した場合は、続くＳ６１０にて、保護オブジェクト指定と隙間保持の設定が反映された重要度エネルギー分布データ７０３中の縦方向で最小エネルギー経路となるシームの探索を行う。その際、重要度エネルギー分布データ７０３の画素中の像域保護ｂｉｔを確認し、もし像域保護ｂｉｔが「１」の画素である場合には、その画素はシーム探索の対象としない。
一方、Ｓ６１１で、縦方向のシームが探索できないとＣＰＵ１０１が判断された場合は、Ｓ６１２に進む。Ｓ６１２では、ＣＰＵ１０１は、幅方向へのサイズ変更が完了したことをプログラム内で一時記憶するフラグデータをＯＮにする。Ｓ６１１で、縦方向のシーム探索に成功したとＣＰＵ１０１が判断した場合は、続くＳ６１３で、ＣＰＵ１０１は、ラスタ画像データ７０１と重要度エネルギー分布データ７０３中から、上記探索された縦シームに相当する画素を削除し、幅方向の画像サイズを１画素小さくする。
さらにＳ６１４にて、ＣＰＵ１０１は、像域情報画像データ７０２から、上記探索された縦シームに相当する画素を削除し、幅方向の画像サイズを１画素小さくし、Ｓ６１５へ進む。
Ｓ６１５からＳ６２０の処理では、上記Ｓ６０９からＳ６１４で説明した幅方向の処理と同様の処理を、高さ方向に対して行う。
【００３６】
Ｓ６２１では、ＣＰＵ１０１は、幅方向のサイズ変更完了フラグデータと、高さ方向のサイズ変更完了フラグデータの両方を確認する。ここで、幅、高さのどちらかがサイズ変更完了していないとＣＰＵ１０１が判断した場合は、Ｓ６０９の処理に戻る。このようにして、幅と高さがＳ６０８にて取得したサイズ変更率の目標値に達するか、もしくは像域保護ｂｉｔによりシーム探索ができなくなるまで、幅方向と高さ方向へのシームカービング処理を繰り返す。像域保護ｂｉｔによりシーム探索ができなくなった場合には、サイズ変更率の目標値に達していなくても、サイズ変更処理は完了する。
【００３７】
Ｓ６２１で、ＣＰＵ１０１は、幅、高さともサイズ変更完了している場合は、Ｓ６２２にて、サイズ変更が完了したラスタ画像データおよび像域情報画像データを、不揮発性ストレージ１０４に保存する。
上記処理により、第２実施形態では、保護オブジェクト指定された対象像域成分の画素削除が全く行われないため、保護オブジェクト指定された領域の画像変形を防止することが可能になる。
【００３８】
〔第３実施形態〕
第１実施形態および第２実施形態の画像処理装置にて動作する画像データ変換プログラムは、シームカービング処理を用いた画像サイズの縮小のみを行う構成となっている。この構成に対し、図２および図５の操作ＵＩ上部の幅および高さのサイズ変更率を指定するＵＩで、拡大変倍に対応した処理を行うため、操作ＵＩ上で１００以上の整数を指定可能にすることもできる。
【００３９】
この場合、第１実施形態を元にすると、Ｓ３１１／Ｓ３１２およびＳ３１５／Ｓ３１６の各処理が、画素の削除ではなく、画素の追加処理に置き換わる。ラスタ画像データのサイズ変更処理ステップ（Ｓ３１１／Ｓ３１５）では、最小エネルギー経路となるシームの画素値を追加すべき画素値として、画素の追加処理を行う。
また、像域情報画像データのサイズ変更処理ステップ（Ｓ３１２／Ｓ３１６）では、最小エネルギー経路となるシームの画素位置での像域情報を、像域情報画像データに追加する画素値として、画素の追加処理を行う。
【００４０】
また、第２実施形態を元にすると、Ｓ６１３／Ｓ６１４およびＳ６１９／Ｓ６２０の各処理が、画素の削除ではなく、画素の追加処理に置き換わる。ラスタ画像データのサイズ変更処理ステップ（Ｓ６１３／Ｓ６１９）では、最小エネルギー経路となるシームの画素値を追加すべき画素値として、画素の追加処理を行う。
また、像域情報画像データのサイズ変更処理ステップ（Ｓ６１４／Ｓ６２０）では、最小エネルギー経路となるシームの画素位置での像域情報を、像域情報画像データに追加する画素値として、画素の追加処理を行う。
【００４１】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステムまたは装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えばＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００４２】
１０１  ＣＰＵ
１０２  ＲＡＭ
【図１】
2016092663.tif 000003
【図２】
2016092663.tif 000004
【図３】
2016092663.tif 000005
【図４】
2016092663.tif 000006
【図５】
2016092663.tif 000007
【図６】
2016092663.tif 000008
【図７】
2016092663.tif 000009