(57)【要約】【課題】画質を維持しつつ、データ量を削減できる画像圧縮方法及び画像圧縮装置の提供。【解決手段】所定ビット長の階調値にて色情報を指定するカラーチャンネルを含んだ画素データにより構成された画像データをメモリに記憶し、該メモリから画素データ毎に各カラーチャンネルの階調値を順次読み出してデータ列を生成し、生成したデータ列から互いに一致する複数の部分データ列を検出し、検出した部分データ列に基づき前記データ列を符号化することで前記画像データを圧縮する画像圧縮方法において、前記データ列を構成する各階調値の最下位ビットを０又は１の共通の値に書き換える。【選択図】図５
2015046701.tif 000002
【特許請求の範囲】
【請求項１】
所定ビット長の階調値にて色情報を指定するカラーチャンネルを含んだ画素データにより構成された画像データをメモリに記憶し、該メモリから画素データ毎に各カラーチャンネルの階調値を順次読み出してデータ列を生成し、生成したデータ列から互いに一致する複数の部分データ列を検出し、検出した部分データ列に基づき前記データ列を符号化することで前記画像データを圧縮する画像圧縮方法において、
前記データ列を構成する各階調値の最下位ビットを０又は１の共通の値に書き換えることを特徴とする画像圧縮方法。
【請求項２】
各画素データは、前記ビット長の階調値にて透明度を指定するアルファチャンネルを更に含むことを特徴とする請求項１に記載の画像圧縮方法。
【請求項３】
カラーチャンネル毎に各階調値の出現頻度を計数し、
計数したカラーチャンネル毎の各階調値の出現頻度に基づいて、前記最下位ビットの書き換えを禁止すべきカラーチャンネルを決定し、
決定したカラーチャンネルの階調値における最下位ビットの書き換えを禁止する
ことを特徴とする請求項１又は請求項２に記載の画像圧縮方法。
【請求項４】
カラーチャンネル毎に各階調値の出現頻度を計数し、
計数したカラーチャンネル毎の各階調値の出現頻度に基づいて、前記最下位ビットより高位側のビットを０又は１の共通の値に書き換えるカラーチャンネルを決定し、
決定したカラーチャンネルの階調値における前記最下位ビットより高位側のビットを０又は１の共通の値に書き換える
ことを特徴とする請求項１又は請求項２に記載の画像圧縮方法。
【請求項５】
アルファチャンネルにより指定される透明度が閾値以上であるか否かを画素データ毎に判断し、
前記透明度が閾値以上であると判断した画素データについて、カラーチャンネルの階調値における前記最下位ビットより高位側のビットを０又は１の共通の値に書き換える
ことを特徴とする請求項２に記載の画像圧縮方法。
【請求項６】
所定ビット長の階調値にて色情報を指定するカラーチャンネルを含んだ画素データにより構成された画像データをメモリに記憶し、該メモリから画素データ毎に各カラーチャンネルの階調値を順次読み出してデータ列を生成し、生成したデータ列から互いに一致する複数の部分データ列を検出し、検出した部分データ列に基づき前記データ列を符号化することで前記画像データを圧縮する画像圧縮装置において、
前記データ列を構成する各階調値の最下位ビットを０又は１の共通の値に書き換える手段
を備えることを特徴とする画像圧縮装置。
【請求項７】
各画素データは、前記ビット長の階調値にて透明度を指定するアルファチャンネルを更に含むことを特徴とする請求項６に記載の画像圧縮装置。
【請求項８】
カラーチャンネル毎の階調値の出現頻度を計数する手段と、
計数したカラーチャンネル毎の階調値の出現頻度に基づいて、前記最下位ビットの書き換えを禁止すべきカラーチャンネルを決定する手段と、
決定したカラーチャンネルの階調値における最下位ビットの書き換えを禁止する手段と
を更に備えることを特徴とする請求項６又は請求項７に記載の画像圧縮装置。
【請求項９】
カラーチャンネル毎の階調値の出現頻度を計数する手段と、
計数したカラーチャンネル毎の階調値の出現頻度に基づいて、前記最下位ビットより高位側のビットを０又は１の共通の値に書き換えるカラーチャンネルを決定する手段と、
決定したカラーチャンネルの階調値における前記最下位ビットより高位側のビットを０又は１の共通の値に書き換える手段と
を更に備えることを特徴とする請求項６又は請求項７に記載の画像圧縮装置。
【請求項１０】
アルファチャンネルにより指定される透明度が閾値以上であるか否かを画素データ毎に判断する手段と、
前記透明度が閾値以上であると判断した画素データについて、カラーチャンネルの階調値における前記最下位ビットより高位側のビットを０又は１の共通の値に書き換える手段と
を更に備えることを特徴とする請求項７に記載の画像圧縮装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画質の低下を抑えつつ、データ量を削減できる画像圧縮方法及び画像圧縮装置に関する。
【背景技術】
【０００２】
近年、ゲームセンター等の遊戯を提供する店舗では、写真を撮影してシールプリントを出力する写真シール作成装置が数多く設置されている。このような写真シール作成装置は、一般に、被写体であるユーザを装置付属のカメラで撮影し、得られた撮影画像をタブレットディスプレイなどに表示して付属のタッチペンで文字や図形などを入力する、いわゆる落書きやお絵描きといわれている編集機能があるものが一般的になっている。そして、このような編集入力された編集画像は撮影画像と合成され、合成画像がプリンタで印刷されてユーザに提供される。
【０００３】
また、写真シール作成装置は通信手段を備え、写真シール作成装置にて作成した撮影画像または合成画像を、ネットワークを介して外部のサーバ装置に送信して蓄積し、ユーザの携帯電話機等に配信できるようにした画像配信システムが登場している。
【０００４】
このような画像を携帯電話機に配信する技術に関して、例えば、特許文献１には、画像合成装置で撮影され、合成出力された画像を通信回線を介して任意の携帯電話機、ＰＨＳ、ＰＤＡ等の端末に送信して表示可能にする技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−２４５２９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述した写真シール作成装置では、撮影画像又はユーザによって編集された合成画像をシール紙に印刷してユーザに提供するので、印刷用に比較的高精細な画像を用いることが多い。すなわち、写真シール作成装置の付属カメラにより画素数が多い画像を用意しておき、この画像に対する編集入力を受付けた上でシール紙に印刷するので、写真シール作成装置で用いる画像は、一般的な画面表示用の画像と比較して、データ量が大きいことが多い。
【０００７】
また、写真シール作成装置には、ユーザのウェブログやＳＮＳで利用するための画像を生成する、おまけ撮影と称する撮影機能、おまけらくがきと称する画像作成機能等の付加機能を有するものがあり、ネットワークを介してユーザの携帯電話機に配信する画像の枚数が従来と比較して増加する傾向にある。
【０００８】
このため、写真シール作成装置で作成された撮影画像又は合成画像を圧縮せずにサーバ装置にアップロードした場合、非常に時間が掛かるという問題点を有している。特に、写真シール作成装置が設置されるゲームセンターなどの遊戯施設では、無線通信環境の電波状態が不安定であり、データ量が大きいデータを送信することは困難である。
【０００９】
写真シール作成装置で作成された撮影画像又は合成画像を高圧縮率で圧縮することにより、データ量を削減することは可能である。しかしながら、データ量を削減するために高圧縮率で画像を圧縮した場合、画質の劣化が発生し易いという側面を有している。近年のスマートフォン等の携帯電話機では、ディスプレイの高解像度化が進んでいるため、ユーザに提供する画像には高解像度のものが求められており、高圧縮率で圧縮することによって画質が劣化した画像は、ユーザに提供する閲覧用の画像として適さないという問題点を有している。
【００１０】
上述した写真シール作成装置に限らず、画像データを処理し、記録する様々な装置において、画質を低下させることなくデータ量を削減できる画像圧縮方法の開発が求められていた。
【００１１】
本発明は斯かる事情に鑑みてなされたものであり、画質の低下を抑えつつ、データ量を削減できる画像圧縮方法及び画像圧縮装置を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係る画像圧縮方法は、所定ビット長の階調値にて色情報を指定するカラーチャンネルを含んだ画素データにより構成された画像データをメモリに記憶し、該メモリから画素データ毎に各カラーチャンネルの階調値を順次読み出してデータ列を生成し、生成したデータ列から互いに一致する複数の部分データ列を検出し、検出した部分データ列に基づき前記データ列を符号化することで前記画像データを圧縮する画像圧縮方法において、前記データ列を構成する各階調値の最下位ビットを０又は１の共通の値に書き換えることを特徴とする。
【００１３】
本発明に係る画像圧縮方法は、各画素データは、前記ビット長の階調値にて透明度を指定するアルファチャンネルを更に含むことを特徴とする。
【００１４】
本発明に係る画像圧縮方法は、カラーチャンネル毎に各階調値の出現頻度を計数し、計数したカラーチャンネル毎の各階調値の出現頻度に基づいて、前記最下位ビットの書き換えを禁止すべきカラーチャンネルを決定し、決定したカラーチャンネルの階調値における最下位ビットの書き換えを禁止することを特徴とする。
【００１５】
本発明に係る画像圧縮方法は、カラーチャンネル毎に各階調値の出現頻度を計数し、計数したカラーチャンネル毎の各階調値の出現頻度に基づいて、前記最下位ビットより高位側のビットを０又は１の共通の値に書き換えるカラーチャンネルを決定し、決定したカラーチャンネルの階調値における前記最下位ビットより高位側のビットを０又は１の共通の値に書き換えることを特徴とする。
【００１６】
本発明に係る画像圧縮方法は、アルファチャンネルにより指定される透明度が閾値以上であるか否かを画素データ毎に判断し、前記透明度が閾値以上であると判断した画素データについて、カラーチャンネルの階調値における前記最下位ビットより高位側のビットを０又は１の共通の値に書き換えることを特徴とする。
【００１７】
本発明に係る画像圧縮装置は、所定ビット長の階調値にて色情報を指定するカラーチャンネルを含んだ画素データにより構成された画像データをメモリに記憶し、該メモリから画素データ毎に各カラーチャンネルの階調値を順次読み出してデータ列を生成し、生成したデータ列から互いに一致する複数の部分データ列を検出し、検出した部分データ列に基づき前記データ列を符号化することで前記画像データを圧縮する画像圧縮装置において、前記データ列を構成する各階調値の最下位ビットを０又は１の共通の値に書き換える手段を備えることを特徴とする。
【００１８】
本発明に係る画像圧縮装置は、各画素データは、前記ビット長の階調値にて透明度を指定するアルファチャンネルを更に含むことを特徴とする。
【００１９】
本発明に係る画像圧縮装置は、カラーチャンネル毎の階調値の出現頻度を計数する手段と、計数したカラーチャンネル毎の階調値の出現頻度に基づいて、前記最下位ビットの書き換えを禁止すべきカラーチャンネルを決定する手段と、決定したカラーチャンネルの階調値における最下位ビットの書き換えを禁止する手段とを更に備えることを特徴とする。
【００２０】
本発明に係る画像圧縮装置は、カラーチャンネル毎の階調値の出現頻度を計数する手段と、計数したカラーチャンネル毎の階調値の出現頻度に基づいて、前記最下位ビットより高位側のビットを０又は１の共通の値に書き換えるカラーチャンネルを決定する手段と、決定したカラーチャンネルの階調値における前記最下位ビットより高位側のビットを０又は１の共通の値に書き換える手段とを更に備えることを特徴とする。
【００２１】
本発明に係る画像圧縮装置は、アルファチャンネルにより指定される透明度が閾値以上であるか否かを画素データ毎に判断する手段と、前記透明度が閾値以上であると判断した画素データについて、カラーチャンネルの階調値における前記最下位ビットより高位側のビットを０又は１の共通の値に書き換える手段とを更に備えることを特徴とする。
【００２２】
本願では、データ列の符号化処理を実行する前に、各階調値の最下位ビットを０又は１の共通の値に書き換えることを特徴の１つとしている。ビット変換処理において変換する階調値はたかだか１に過ぎないので、この差を色差として人間の眼により認識することはほぼ不可能である。その一方で、各色の階調値及びアルファ値における最下位ビットを０又は１の共通の値に書き換えることにより、符号化対象のデータ列に現れる値の数を２５６個（各階調値を８ビットとした場合）から１２８個に減らすことができるため、続く符号化処理において、互いに一致する部分データ列をより多く検出できる可能性、より長い一致長で一致する部分データ列を検出できる可能性が高まり、その結果、圧縮率を高めることができる。
【発明の効果】
【００２３】
本発明による場合、画質を維持しつつ、画像データのデータ量を削減することができるので、通信コストを抑制することができ、外部のサーバ装置へ画像データをアップロードする時間、及び外部サーバからユーザの端末に画像データをダウンロードする時間を短縮することができる。
【図面の簡単な説明】
【００２４】
【図１】本実施の形態に係る写真シール作成装置の外観を示す斜視図である。
【図２】本実施の形態に係る写真シール作成装置の外観を示す斜視図である。
【図３】本実施の形態に係る写真シール作成装置の構成を模式的に示すブロック図である。
【図４】本実施の形態に係る写真シール作成装置の構成を模式的に示すブロック図である。
【図５】画像処理部の機能的構成の一例を示すブロック図である。
【図６】本実施の形態に係るビット変換処理を説明する説明図である。
【図７】本実施の形態に係る写真シール作成装置が実行する処理の手順を示すフローチャートである。
【図８】送信用画像データの生成手順を示すフローチャートである。
【図９】実施の形態２に係る送信用画像データの生成手順を示すフローチャートである。
【図１０】実施の形態３に係る送信用画像データの生成手順を示すフローチャートである。
【図１１】実施の形態４に係る送信用画像データの生成手順を示すフローチャートである。
【発明を実施するための形態】
【００２５】
以下、本発明の適用例の１つとして、写真シール作成装置に本願の画像圧縮方法を適用した形態について、図面を用いて具体的に説明する。
実施の形態１．
図１及び図２は本実施の形態に係る写真シール作成装置の外観を示す斜視図である。写真シール作成装置は全体として略直方体形状のボックス型の装置であり、鉛直方向に略半分に分けるように仕切りが設けられている。写真シール作成装置は、この仕切りによって撮影空間Ｒ１及び編集空間Ｒ２に分けられている。図１は主に写真シール作成装置の撮影空間Ｒ１側から観た外観斜視図を示しており、図２は主に編集空間Ｒ２側から観た写真シール作成装置の外観斜視図を示している。
【００２６】
図１の斜視図に示すように、撮影空間Ｒ１は略直方体をなすフレームに囲まれた空間である。撮影空間Ｒ１は、ユーザからの料金の投入を受け付け、ユーザの写真撮影を実行するための空間である。撮影空間Ｒ１には、所定料金を受け付ける受付部１が外側に設けられており、また、編集空間Ｒ２との仕切りに相当する内部壁面にはユーザを撮影するためのカメラ２１、ディスプレイ２２等の機器を含む撮影部２が設けられている。
【００２７】
受付部１には、硬貨の投入を受け付けるコイン投入口１０と、コイン投入口１０から投入される硬貨の真偽を判定するコインセレクタ１１と、投入された硬貨の総額又は投入残額等の各種情報を表示するための表示パネル１２とが含まれる。コインセレクタ１１は、コイン投入口１０から投入される硬貨の真偽を判定して判定信号を送出する。コインセレクタ１１は、硬貨が偽と判定された場合、又は硬貨を受け付けないように設定されている間、図示しないコイン返却口へ硬貨を吐き出す。表示パネル１２は、液晶パネル、セグメントＬＥＤ等からなり、制御信号を受け付けてコインの投入を促す案内、投入すべき料金、投入総額、残額、又は他のユーザが撮影中でありコインの投入を受け付けていない旨の案内等を表示する。
【００２８】
受付部１に含まれている表示パネル１２及びコインセレクタ１１は、後述する第１筐体の内部に収納された制御機構に接続されており、制御機構との間で判定信号、制御信号等を送受信する。
【００２９】
ユーザは、受付部１のコイン投入口１０から所定料金に相当する硬貨を投入することにより、写真シール作成装置によるサービスを受けることができる。
【００３０】
撮影空間Ｒ１の内部、即ち撮影ブース内部には、撮影部２を構成する各機器が設置されている。撮影ブース内部の編集空間Ｒ２との空間を仕切る壁面の下部には、各機器を制御する制御機構を収納した第１筐体２０が設置されている。第１筐体２０の上方であって、立った状態のユーザの略目線の高さの位置にカメラ２１が設置されている。カメラ２１の下方には、カメラ２１から出力される映像信号に基づきプレビュー画面を表示し、且つユーザの操作を受け付けるタッチパネル式のディスプレイ２２が設定されている。また、カメラ２１及びディスプレイ２２を囲むように被写体に光を照射するストロボ・ランプ２３が設置されている。また、第１筐体２０上部には音楽、案内音声を出力するスピーカ２４，２４が設置されている。
【００３１】
撮影部２を構成するカメラ２１、ディスプレイ２２、ストロボ・ランプ２３及びスピーカ２４，２４は夫々、第１筐体２０の内部に設置されている制御機構に夫々接続されている。
【００３２】
カメラ２１は、ユーザを被写体として撮影するため、内部にレンズ群、絞り、シャッター、ＣＣＤ（Charge Coupled Device）等の撮像素子を含むデジタルカメラである。カメラ２１は、タイマー機能によりシャッターが動作して撮像素子から静止画像を取得し記憶することにより写真撮影を実行する。また、カメラ２１は起動している間、撮像素子から出力されるデジタル化された映像信号を制御機構へ出力している。制御機構からは、この映像信号に基づくプレビュー画面の表示用の撮影画像が出力される。
【００３３】
ディスプレイ２２は撮影中の操作を案内する操作画面とプレビュー画面とを表示するための液晶パネルを有し、カメラ２１からリアルタイムに出力される映像信号に基づいて制御機構から出力されている画像を受け付けて表示する。また、ディスプレイ２２はタッチパネル式であり、ユーザによってタッチされた箇所の画面上の位置の情報を含む信号が制御機構へ出力される。
【００３４】
ストロボ・ランプ２３は、撮影ブース内の照明機器であると共に、写真撮影時にはフラッシュとして機能する。なお、本実施の形態ではストロボ・ランプ２３は図に示すように７つに分けられており、制御機構に含まれる制御基盤を介して夫々の発光のタイミングがカメラ２１による写真撮影（シャッターの動作）に同期して制御される。
【００３５】
撮影ブースの外周は遮光性を有するシート材（図示せず）によって覆われている。このシート材によって外部からの光が遮断され、且つ外部からの覗き見を防止することができ、さらにユーザが撮影ブース内で自由にポーズをとることができるプライベート空間が実現される。
【００３６】
また、撮影ブース内側から見たシート材は均等な色調及び明度となるようにしてある。カメラ２１から観た場合にユーザの後方がシート材の均等な色調及び明度となるので、後述にて説明するようにユーザが写っている領域以外を透明化するクロマキー処理が可能になる。
【００３７】
ユーザは撮影ブース内に入り、ディスプレイ２２に表示される案内及びスピーカ２４，２４から出力される案内音声に従い操作画面を操作し、ストロボ・ランプ２３からの照明を受けてポーズを決め、カメラ２１による写真撮影を実行することができる。まず、ユーザはタッチパネル式のディスプレイ２２に表示される操作画面から、ユーザが写る写真を装飾する前景画像及び／又は背景画像を選択することができる。ユーザが前景画像及び／又は背景画像を選択した場合、ディスプレイ２２には、カメラ２１から制御機構を介してリアルタイムに出力されている画像、即ちカメラ２１から出力されている撮影画像、選択された前景画像及び／又は背景画像に基づく印刷結果のプレビュー画面が表示される。ユーザはプレビュー画面を確認しながらポーズを決め、写真撮影を実行することができる。
【００３８】
写真撮影が実行された場合、制御機構はカメラ２１で記憶された静止画像を取得し、後にユーザによる編集操作を受け付けるための画像、及び、後に印刷出力するための画像として夫々複製する。
【００３９】
次に図２の斜視図に示す編集空間Ｒ２に設置されている各構成部について説明する。編集空間Ｒ２は、上述の撮影空間Ｒ１の内部のカメラ２１、ディスプレイ２２、ストロボ・ランプ２３、スピーカ２４，２４及び第１筐体２０が設置されていた壁面の裏側の空間であり、ユーザが写真撮影を実行した後に画像の編集をすることができる空間である。図２に示す編集空間Ｒ２は撮影空間Ｒ１の上面から延設されているバーに取り付けられたカーテン状のシート材（図示せず）によって他の空間から仕切られる。そして編集空間Ｒ２には、以下に示す各構成部を内外に備える略直方体の第２筐体３０が設置されている。
【００４０】
第２筐体３０の一方の側面は撮影空間Ｒ１との仕切りである壁面に接しており、他の三側面の内の対向する面には夫々、写真撮影された画像及びその他の画像を編集するためのインタフェースを備える第１編集部４ａ及び第２編集部４ｂが設けられている。他方の側面には編集された画像を所定の写真シール用紙に印刷出力する印刷部５が設けられている。また、第２筐体３０の内部には、第１編集部４ａ、第２編集部４ｂ及び印刷部５の各構成部を制御する制御機構が設置されている。
【００４１】
なお、第１筐体２０及び第２筐体３０の相互に接している面は夫々が有する開口部（図示せず）を介して内部が連通しており、第１筐体２０の内部に設置されている撮影部２の制御機構と、第２筐体３０の内部に設置されている第１編集部４ａ、第２編集部４ｂ及び印刷部５の制御機構とは、複数のケーブル類によって接続されている。
【００４２】
第１編集部４ａには夫々、写真撮影された画像及び他の画像を編集するための操作画面を表示するタブレットディスプレイ４０ａと、２つのタッチペン４１ａ，４２ａと、スピーカ４３ａとが含まれる。なお後述の第２編集部４ｂにもタブレットディスプレイ４０ｂと、２つのタッチペン４１ｂ，４２ｂと、スピーカ４３ｂとが含まれている。第１編集部４ａ及び第２編集部４ｂ夫々のタブレットディスプレイ４０ａ，４０ｂ、タッチペン４１ａ，４２ａ，４１ｂ，４２ｂ、及びスピーカ４３ａ，４３ｂは夫々、第２筐体３０の対向する面に向かい合うように設置されている。また、タブレットディスプレイ４０ａ，４０ｂ、タッチペン４１ａ，４２ａ，４１ｂ，４２ｂ及びスピーカ４３ａ，４３ｂは第２筐体３０の内部の制御機構に接続されている。
【００４３】
印刷部５には、第２筐体３０の内部に設置されており画像を所定の用紙に印刷するプリンタ５０と、印刷された用紙がプリンタから吐き出されるシール吐出口５１と、各種情報を表示する表示パネル５２とが含まれる。表示パネル５２は第２筐体３０の内部に設置された制御機構に接続されており、プリンタ５０も第２筐体３０の内部で制御機構に接続されている。
【００４４】
ユーザは、撮影ブース内で撮影部２により撮影を完了した後、第１編集部４ａ又は第２編集部４ｂにより印刷する画像の選択、選択した画像に対する落書き等の作業が可能である。第１編集部４ａ又は第２編集部４ｂ夫々のタブレットディスプレイ４０ａ，４０ｂには、写真撮影が実行されたことによって取得された画像と、選択された前景画像及び／又は背景画像とが共に表示される。タブレットディスプレイ４０ａ，４０ｂは、共に設置されているタッチペン４１ａ，４２ａ，４１ｂ，４２ｂによる操作を受け付けるようにしてあり、ユーザはタッチペン４１ａ，４２ａ，４１ｂ，４２ｂにより印刷する画像の選択及び選択した画像への文字、スタンプ状の絵柄の挿入などの操作が可能である。
【００４５】
制御機構により、写真撮影された画像に対し、後述する画像処理部７（図３を参照）による補正処理が行なわれる。そして、ユーザによる編集が完了した場合、補正処理後の印刷出力用の画像に、選択された前景画像及び／又は背景画像、更に編集結果に基づく文字、絵柄等などが合成される。合成された後の画像は、第２筐体３０内部に設置されているプリンタ５０によって所定のシール紙に印刷され、写真シールとしてシール吐出口５１に吐き出される。ユーザは、シール吐出口５１から完成した写真シールを取得することができ、これにより写真シールの撮影提供サービスが実現する。
【００４６】
図３及び図４は本実施の形態に係る写真シール作成装置の構成を模式的に示すブロック図である。図３は、主に以下に説明する制御部６、画像処理部７、電源部８、通信部９及び受付部１の構成を示し、図４は、撮影部２、第１編集部４ａ、第２編集部４ｂ及び印刷部５の構成を示している。図３及び図４に示すように写真シール作成装置は、各構成部を制御する制御部６と、撮影された画像を補正する画像処理部７と、ＡＣ電源から電力を供給する電源部８と、インターネット等の外部ネットワークＮへ通信が可能な通信部９と、上述のコイン投入口１０、コインセレクタ１１及び表示パネル１２を含む受付部１と、カメラ２１、ディスプレイ２２、ストロボ・ランプ２３及びスピーカ２４，２４を含む撮影部２と、タブレットディスプレイ４０ａ、２つのタッチペン４１ａ，４２ａ及びスピーカ４３ａを含む第１編集部４ａと、タブレットディスプレイ４０ｂ、２つのタッチペン４１ｂ，４２ｂ及びスピーカ４３ｂを含む第２編集部４ｂと、プリンタ５０、シール吐出口５１及び表示パネル５２を含む印刷部５と、各部を接続するバス１００とにより構成される。なお、制御部６、画像処理部７、電源部８、通信部９及びバス１００が、第１筐体２０及び第２筐体３０の内部に設置された制御機構に対応する。
【００４７】
受付部１、撮影部２、第１編集部４ａ、第２編集部４ｂ及び印刷部５を夫々構成する各ハードウェアは、上述のように、写真シール作成装置のユーザによる操作が可能なように撮影空間Ｒ１、編集空間Ｒ２に設置されており、第１筐体２０及び第２筐体３０内部に設置されている制御機構内のバス１００に接続されている。これに対し制御部６、画像処理部７、電源部８及び通信部９は第１筐体２０及び第２筐体３０の内部に設置されている制御機構内に含まれており、制御機構内に配されたバス１００に接続されている。
【００４８】
制御機構は、第１筐体２０及び第２筐体３０の内部に設置された複数のパーソナルコンピュータ（以下、ＰＣ：Personal Computerという。）と、上述の受付部１、撮影部２、第１編集部４ａ、第２編集部４ｂ及び印刷部５を構成する各ハードウェアをＰＣから制御するための制御基盤とを含んで構成される。なお、複数のＰＣは夫々、その制御対象によって機能が分割される。例えば、撮影空間Ｒ１の受付部１を制御するＰＣと、撮影部２を制御するＰＣと、第１編集部４ａ及び第２編集部４ｂを制御するＰＣと、撮影された画像に画像処理を施し印刷部５にて出力するＰＣと、夫々機能が分割されて動作するように構成される。本実施の形態では、画像処理について主に説明するため仮想的に、受付部１、撮影部２、第１編集部４ａ及び第２編集部４ｂを制御する第１ＰＣと、画像処理を行ない印刷部５にて出力する第２ＰＣとの動作によって各構成部が制御されるとして以下に説明する。
【００４９】
制御部６には第１ＰＣに備えられた、各構成部のハードウェアを制御するＣＰＵ６０と、ＣＰＵ６０の動作により発生する情報を一時的に記憶するＤＲＡＭ（Dynamic Random Access Memory）等のメモリ６１と、各種データを記憶するＨＤＤ（Hard Disk Drive）６２と、撮影部２のカメラ２１から出力される映像信号から静止画像を撮影画像としてキャプチャし、クロマキー処理を実行するためのキャプチャ・クロマキーボード６３とが含まれる。
【００５０】
ＣＰＵ６０は、ＨＤＤ６２に記憶されている後述の制御プログラム６Ｐを読み出して実行することにより、受付部１のコインセレクタ１１からの判定信号を受け付け、受け付けた判定信号に応じて表示パネル１２へ制御信号を送出し、所定料金の受け付けを実現する。またＣＰＵ６０は、制御プログラム６Ｐを読み出して実行することにより、撮影部２のカメラ２１による撮影と、ストロボ・ランプ２３との動作を同期させる制御を行ない、カメラ２１によって写真撮影されて記憶された印刷出力用の画像を取得する処理、更に、カメラ２１から出力される映像信号を、キャプチャ・クロマキーボード６３を介してプレビュー画面、編集画面用の撮影画像として取得する処理、ディスプレイ２２に表示する処理、第１編集部４ａ及び第２編集部４ｂによる編集を受け付ける処理等の各種処理を実行する。
【００５１】
ＨＤＤ６２には、ＣＰＵ６０が各構成部のハードウェアを制御するための制御プログラム６Ｐが記憶されている。ＣＰＵ６０がＨＤＤ６２から制御プログラム６Ｐをメモリ６１に読み出して実行することにより、各ハードウェアの制御及び種々のソフトウェア機能が実現される。
【００５２】
また、ＨＤＤ６２には、制御プログラム６Ｐの他に、写真撮影された印刷出力用の画像と合成するための前景／背景画像、撮影部２のディスプレイ２２に撮影画像と共に表示するための前景／背景画像が記憶されている。ＨＤＤ６２には更に、撮影部２のディスプレイ２２に表示される操作画面に用いられる各画像、第１及び第２編集部４ａ，４ｂのタブレットディスプレイ４０ａ，４０ｂに表示される編集画面に用いられる画像、テキストファイル、スピーカ２４，２４，４３ａ，４３ｂに出力する案内音声などの音声データ等のデータが記憶されている。また、ＨＤＤ６２には、ユーザが写真撮影を実行したことでＣＰＵ６０によりカメラ２１から取得された印刷出力用の画像、前景画像及び／又は背景画像と合成処理が実行されることで得られる合成画像及び編集処理によって得られる編集画像が記憶される。
【００５３】
キャプチャ・クロマキーボード６３は、受け付けた映像信号から例えば毎秒３０枚の静止画像を取得して出力するキャプチャ機能と、キャプチャされた各静止画像から所定の色調及び明度の画素を認識し、一定の範囲内で同一の色調及び明度の画素に対してアルファ値（透明度）を設定することにより透明化し出力するクロマキー機能とを有するハードウェアである。キャプチャ・クロマキーボード６３は、カメラ２１から出力される映像信号を受け付けるように接続されている。また、キャプチャ及びクロマキー処理された後の静止画像は、キャプチャ・クロマキーボード６３に内蔵される図示しないメモリに書き込まれる。ＣＰＵ６０は当該メモリから静止画像をプレビュー用の撮影画像として読み出し、クロマキー処理を行なわせ、ディスプレイ２２のプレビュー画面に表示する処理を実行する。
【００５４】
また、キャプチャ・クロマキーボード６３は、ドライバソフトにより毎秒取得する静止画像の枚数、及び透明化する所定の色調及び明度、例えばＲＧＢ値の設定が可能である。ＣＰＵ６０は、カメラ２１によって撮影される画像の内のユーザの後方に位置するシート材が写っている領域の色調及び明度を透明化するように指示する。これにより、ＣＰＵ６０は、キャプチャ・クロマキーボード６３にて、クロマキー処理された人物のみの人物画像を得ることができ、前景画像及び／又は背景画像と重ねてプレビュー画面を表示させることができる。
【００５５】
画像処理部７には第２ＰＣに備えられた、各構成部のハードウェアを制御するＣＰＵ７０と、ＣＰＵ７０の動作により発生する情報を一時的に記憶するＤＲＡＭ等のメモリ７１と、各種データを記憶するＨＤＤ７２と、画像及び描画命令を受け付けて描画処理を行なうグラフィックボード７３とが含まれる。
【００５６】
ＣＰＵ７０は、ＨＤＤ７２に記憶されている後述の画像処理プログラム７Ｐを読み出して実行することにより、制御部６の制御に基づく写真撮影によってカメラ２１にて撮影された画像を加工する画像処理を実現する。詳細には、制御部６の制御により、ユーザが写真撮影を実行してカメラ２１にて写真撮影された画像が画像処理部７へ受け渡される。そしてＣＰＵ７０は、制御部６から写真撮影された画像を取得してメモリ７１に書き込み、画像処理を実行することによって、画像中のユーザの顔を小顔にするなどの見栄えを良くする加工を行なう。
【００５７】
ＨＤＤ７２には、ＣＰＵ７０が、取得した画像に対する加工などの画像処理を行なうための画像処理プログラム７Ｐが記憶されている。画像処理プログラム７Ｐは、図示しないＣＤ−ＲＯＭ、ＤＶＤ等の記録媒体に記録された画像処理プログラムをＨＤＤ７２に複製したものでもよいし、通信部９を介して取得したものでもよい。
【００５８】
グラフィックボード７３は、受け付けた画像及び描画命令に基づき、図示しない内蔵メモリに画像を描画するハードウェアである。ＣＰＵ７０は、自身が制御部６から取得してメモリ７１に一時的に記憶した画像に対する画像処理を、グラフィックボード７３を用いて行なう。具体的には、ＣＰＵ７０は画像と、画像処理に伴なう描画命令とをグラフィックボード７３に与えて描画処理を行なわせ、描画処理によって得られた画像をメモリ７１に取得する。
【００５９】
電源部８は、第１ＰＣ及び第２ＰＣのみならず各構成部へのＡＣ電源からの電力の供給を実現する。写真シール作成装置には、電源を投入する電源スイッチ（図示せず）が設けられており、電源部８に接続されている。電源部８は電源スイッチのオン／オフを検知し、写真シール作成装置の稼動／動作を切り替える。なお、電源部８はＵＰＳ（Uninterruptible Power Supply：無停電電源装置）ユニット８０を含んで構成される。ＵＰＳユニット８０により、ＡＣ電源からの電力が突然遮断された場合でも、各構成部へのダメージを減らすことができる。電源スイッチがオフに切り替えられた場合、ＵＰＳユニット８０は停電信号をＣＰＵ６０へ出力し、ＣＰＵ６０は停電信号を検知したときの所定の終了処理を行ない写真シール作成装置全体の電源をオフにする。
【００６０】
通信部９は、ＰＨＳユニット９０により構成され、制御部６（ＣＰＵ６０）に内部バス１００を介して接続されている。ＰＨＳユニット９０は、インターネット等の外部ネットワークＮに接続してデータの送受信を実現する。ＣＰＵ６０は、通信部９のＰＨＳユニット９０を介して外部ネットワークＮ上の他の装置と通信してデータの送受信が可能である。本実施の形態における写真シール作成装置は、ＣＰＵ６０はユーザの名前、メールアドレス等の識別情報又は送信先のＵＲＬと共に、撮影して編集した後の画像データを外部ネットワークＮに接続している不図示のサーバ装置へ送信（アップロード）する機能を有している。この機能により、サーバ装置に蓄積されているユーザ自身の画像を携帯電話機又は自宅のＰＣから閲覧することができるサービス、及びサーバ装置に蓄積されているユーザ自身の画像データを携帯電話機又はＰＣへダウンロードすることができるサービスを実現する。
【００６１】
本実施の形態では、写真シール作成装置にて撮影した画像をユーザが編集した後、シール紙に印刷することで写真シールを作成すると共に、ユーザによって編集された画像を符号化することで画像データの圧縮を行い、その後にサーバ装置にアップロードする構成としている。
【００６２】
以下、写真シール作成装置が実行する画像データの圧縮処理について説明を行う。図５は画像処理部７の機能的構成の一例を示すブロック図である。なお、図５に示す例では、画像データの圧縮処理に関する機能的構成のみを示し、画像処理部７が備える他の機能についての構成は図示していない。画像処理部７は、ＣＰＵ７０が、ＨＤＤ７２に記憶されている画像処理プログラム７Ｐを読み出して実行することにより、本願の画像圧縮装置として機能するように構成されている。
【００６３】
画像処理部７は機能的構成として、データ入力部７０１、入力バッファ７０２、ビット変換処理部７０３、符号化処理部７０４、及びデータ出力部７０５を備える。
【００６４】
圧縮対象の画像データは、カメラ２１にて写真撮影された撮影画像に係る画像データ、又はユーザによって編集処理された合成画像に係る画像データであり、制御部６の制御によりＨＤＤ６２に格納される。この画像データは複数の画素データにより構成されており、各画素データは、所定ビット長の階調値にて色情報を指定する複数のカラーチャンネル（例えば、８ビットの階調値で表されるＲＧＢ各色のカラーチャンネル）を含むものとする。また、各画素データは、カラーチャンネルだけでなく、各画素における透明度（アルファ値）を指定するアルファチャンネルを含むものであってもよい。
【００６５】
データ入力部７０１は、圧縮対象の画像データをＨＤＤ６２から取得する。入力バッファ７０２は、適宜のサイズからなるデータを一時的に記憶する記憶手段であり、データ入力部７０１が取得した画像データから、バッファサイズ分だけ各画素の階調値（ＲＧＢ値及びアルファ値）を順次読み込んで記憶する。例えば、入力バッファ７０２が５１２バイトのバッファサイズを有し、圧縮対象の画像データにおけるＲＧＢ各色及びアルファ値がそれぞれ８ビットの階調値を有する場合、１２８画素分のＲＧＢ値及びアルファ値を圧縮対象の画像データから読み込んで入力バッファ７０２に記憶させることができる。
【００６６】
ビット変換処理部７０３は、入力バッファ７０２に記憶した各階調値の最下位ビットを０又は１の共通の値に書き換える処理を行う。ビット変換処理部７０３は、入力バッファ７０２に記憶した各階調値の最下位ビットに０又は１の値を書き込むことにより、入力バッファ７０２に記憶した各階調値の最下位ビットを全て０（又は全て１）にするようにしてもよく、入力バッファ７０２に記憶した各階調値の最下位ビットが１でないものを０（又は各階調値の最下位ビットが０でないものを１）に書き換えることにより、入力バッファ７０２に記憶した各階調値の最下位ビットを全て０（又は全て１）にしてもよい。
【００６７】
図６は本実施の形態に係るビット変換処理を説明する説明図である。図６（ａ）はビット変換処理前のデータ列を示し、図６（ｂ）はビット変換処理後のデータ列を示している。圧縮対象の画像データのＲＧＢ各色が８ビットの階調値を有し、更に各画素に８ビットのアルファ値が設定されているものとする。圧縮対象の画像データから各画素におけるＲＧＢ値及びアルファ値を順次読み出して、階調値のデータ列を生成した場合、例えば、図６（ａ）に示すように、「１４８，１２６，９２，０，１４８，１２６，１００，０，…」といったデータ列が生成される。
【００６８】
本実施の形態では、各階調値における最下位ビットを０又は１の共通の値に書き換えるビット変換処理を実行するので、例えば、最下位ビットを１に書き換えるビット変換処理を実行した場合、図６（ｂ）に示すように、「１４９，１２７，９３，１，１４９，１２７，１０１，１，…」といったデータ列が生成される。
【００６９】
符号化処理部７０４は、ビット変換処理部７０３にて各階調値の最下位ビットを０又は１の共通の値に書き換えた後のデータ列について符号化処理を行う。本実施の形態では、ＰＮＧ（Portable Network Graphics）で採用されている圧縮アルゴリズムを用いて、データ列の符号化処理を行う。ＰＮＧの圧縮アルゴリズムでは、ＬＺ７７の改良アルゴリズムであるＬＺＳＳと、ハフマン符号化とを組み合わせたデフレート圧縮により、データ列の符号化を行う。
【００７０】
ＬＺＳＳでは、符号化対象のデータ列から互いに一致する複数の部分データ列を検出し、一致長、一致位置に基づいて符号化対象のデータ列を符号化する。ハフマン符号化は、一定ビットごとに文字列を区切り、区切られた後の文字列を統計的に処理して、出現数が最も多い文字列に対して短い符号を与えることでデータ列を符号化するものである。
ＰＮＧの圧縮アルゴリズムでは、部分データ列を含むデータ及び一致長を合わせて１つのハフマン符号で符号化し、一致位置を別のハフマン符号で符号化する。
【００７１】
符号化処理部７０４は、符号化処理済みのデータ列をデータ出力部７０５に順次書き込むことにより、圧縮後の画像データをデータ出力部７０５に生成させる。
【００７２】
以下、写真シール作成装置が実行する処理について説明を行う。
図７は本実施の形態に係る写真シール作成装置が実行する処理の手順を示すフローチャートである。写真シール作成装置の制御部６に設けられたＣＰＵ６０は、コイン投入口１０から所定料金を満たす硬貨が投入されたか否かを判断する（ステップＳ１）。所定料金を満たす硬貨が投入されていないと判断した場合（Ｓ１：ＮＯ）、ＣＰＵ６０は、処理をステップＳ１へ戻して所定料金を満たす硬貨が投入されたと判断するまで待機する。なお、この間ＣＰＵ６０は、表示パネル１２に投入済みの硬貨の総額を表示させるように制御信号を表示パネル１２へ出力する。
【００７３】
ＣＰＵ６０は、ステップＳ１において所定料金を満たす硬貨が投入されたと判断した場合（Ｓ１：ＹＥＳ）、表示パネル１２に案内情報の画面を表示し、更に撮影部２のディスプレイ２２に操作画面を表示させ、更にスピーカから案内音声を出力し（ステップＳ２）、ユーザに撮影ブース内に入り、撮影を実行するように促す。これにより、写真プリントサービスの提供が開始される。
【００７４】
ＣＰＵ６０は、ユーザがディスプレイ２２における操作画面などを操作することにより、合成させる前景画像及び／又は背景画像が選択され、更に、撮影が実行され、完了したか否かを判断する（ステップＳ３）。具体的には、前景画像及び／又は背景画像が選択されると、シャッターを動作させるためのカウントが開始され、ディスプレイ２２にプレビュー画面が表示される。そして、カウントアップされたとＣＰＵ６０が判断してシャッターを動作させ写真撮影が実行される。ユーザがプレビュー画面を見て撮影された画像で決定する旨のボタン等を操作するか、例えば６回などの所定回数の写真撮影が終了するかにより撮影が完了する。ＣＰＵ６０は、撮影が完了していないと判断した場合（Ｓ３：ＮＯ）、処理をステップＳ３へ戻して、撮影が完了するまで待機する。
【００７５】
ＣＰＵ６０は、撮影が完了したと判断した場合（Ｓ３：ＹＥＳ）、シャッターを動作させて写真撮影された画像をカメラ２１から取得し、選択された前景画像及び／又は背景画像と関連付けてメモリ６１に保存する（ステップＳ４）。そしてＣＰＵ６０は、ディスプレイ２２に案内情報の画面を表示させ、第１編集部４ａ又は第２編集部４ｂのタブレットディスプレイ４０ａ，４０ｂに操作画面を表示させ、スピーカ２４，２４によって案内音声を出力し（ステップＳ５）、ユーザに編集空間Ｒ２へ移動し、編集操作を行なうように促す。
【００７６】
次にＣＰＵ６０は、メモリ６１に保存した写真撮影された画像を画像処理部７へ受け渡して、画像処理を実行させる（ステップＳ６）。そしてＣＰＵ６０は、タブレットディスプレイ４０ａ，４０ｂの操作画面にて編集を受け付ける（ステップＳ７）。このとき、操作画面に表示されるユーザを撮影した画像は、画像処理後の画像であってもよい。この場合、ＣＰＵ６０は画像処理後の小顔にする加工が行なわれた撮影画像をクロマキー処理して人物のみの画像を作成し、操作画面に前景画像及び／又は背景画像と重ねて表示させる。
【００７７】
ＣＰＵ６０は、編集完了を指示する操作がされたことにより編集が完了し、且つ画像処理部７による画像処理が完了したか否かを判断する（ステップＳ８）。ＣＰＵ６０は、編集又は画像処理部７による画像処理のいずれかが未完了であると判断した場合（Ｓ８：ＮＯ）、処理をステップＳ８に戻して両者が完了するまで待機する。
【００７８】
ＣＰＵ６０は、編集及び画像処理のいずれもが完了したと判断した場合（Ｓ８：ＹＥＳ）、画像処理部７による画像処理によって加工が完了した加工画像と、編集結果の文字又は画像などの情報と、選択されて関連付けてメモリ６１に保存されている背景画像及び／又は前景画像とに対し合成処理を実行して合成画像を生成する（ステップＳ９）。
【００７９】
次いで、ＣＰＵ６０は、生成された合成画像を基に外部サーバ装置への送信用画像データを生成する（ステップＳ１０）。このとき、ＣＰＵ６０は、画像処理部７に指示を与えることにより、合成画像に対して平滑化処理を施し、更に符号化処理を行うことによって送信用の画像データを生成する。
【００８０】
画像処理部７は、ステップＳ１０で平滑化処理及び符号化処理を施した送信用の画像データを制御部６へ送出する。制御部６は、画像処理部７から取得した画像データをＨＤＤ６２に格納する。そして、制御部６の制御により、ＨＤＤ６２に格納した符号化済みの画像データを、通信部９を介して外部のサーバ装置へ送信する。
【００８１】
また、ＣＰＵ６０は、ステップＳ９で生成された合成画像を操作画面に表示すると共に、印刷部５のプリンタ５０へ出力して印刷出力を指示する（ステップＳ１１）。このときＣＰＵ６０は、操作画面にて印刷レイアウトの選択、印刷指示を受け付けてもよい。
【００８２】
ＣＰＵ６０は、印刷が完了したか否かを判断し（ステップＳ１２）、印刷が完了していないと判断した場合（Ｓ１２：ＮＯ）、処理をステップＳ１２へ戻して印刷が完了したと判断するまで待機する。ＣＰＵ６０は、プリンタ５０における印刷が完了したと判断した場合（Ｓ１２：ＹＥＳ）、印刷が完了した旨を示す案内表示を印刷部５の表示パネル５２、第１編集部４ａ又は第２編集部４ｂのタブレットディスプレイ４０ａ，４０ｂに表示し、スピーカ４３ａ，４３ｂから案内音声を出力し（ステップＳ１３）、処理を終了する。
【００８３】
このとき、印刷された写真シールがシール吐出口５１に排出されているので、ユーザは自身が撮影された写真シールを取得することができる。このように、写真プリントサービスの提供が実現される。
【００８４】
次に、図７に示したフローチャートのステップＳ１０の処理について詳細を説明する。図８は送信用画像データの生成手順を示すフローチャートである。画像処理部７は、圧縮対象の画像データを制御部６内のＨＤＤ６２から取得する（ステップＳ１０１）。取得した画像データは、画像処理部７内のデータ入力部７０１に記憶される。
【００８５】
画像処理部７は、取得した画像データから、入力バッファ７０２のバッファサイズ分だけ、各画素の階調値（ＲＧＢ値及びファルファ値）を順次読み込んで入力バッファ７０２に記憶させる（ステップＳ１０２）。
【００８６】
ビット変換処理部７０３は、入力バッファ７０２に記憶させた各階調値の最下位ビットを０又は１の共通の値に書き換える処理を行う（ステップＳ１０３）。
次いで、画像処理部７は、入力バッファ７０２に記憶させた全画素についてのビット変換処理が完了したか否かを判断し（ステップＳ１０４）、入力バッファ７０２内の全画素についてビット変換処理が完了していない場合（Ｓ１０４：ＮＯ）、処理をステップＳ１０３へ戻す。
【００８７】
入力バッファ７０２に記憶させた全画素についてのビット変換処理が完了したと判断した場合（Ｓ１０４：ＹＥＳ）、入力バッファ７０２は、ビット変換処理後のデータ列を符号化処理部７０４へ出力する。
【００８８】
次いで、画像処理部７は、ステップＳ１０１で取得した画像データを構成する全画素についてビット変換処理が完了したか否かを判断する（ステップＳ１０５）。画像データを構成する全画素についてビット変換処理が完了していない場合（Ｓ１０５：ＮＯ）、画像処理部７は、処理をステップＳ１０２へ戻し、Ｓ１０２以降の処理を続行する。
【００８９】
ステップＳ１０１で取得した画像データを構成する全画素についてビット変換処理が完了したと判断した場合（Ｓ１０５：ＹＥＳ）、符号化処理部７０４は、各階調値の最下位ビットを０又は１の共通の値に書き換えた全画素分のデータ列に対して、符号化処理を施す（ステップＳ１０６）。符号化処理部７０４は、例えば、ＰＮＧで採用されている圧縮アルゴリズムを用いて、データ列を符号化することができる。符号化処理部７０４は、符号化済みのデータ列をデータ出力部７０５へ出力する。
【００９０】
画像処理部７は、全画像データに対する符号化処理が完了したか否かを判断する（ステップＳ１０７）。未処理の画像データが存在する場合（Ｓ１０７：ＮＯ）、画像処理部７は、処理をステップＳ１０１へ戻し、ステップＳ１０１以降の処理を続行する。
全画像データに対する符号化処理が完了した場合（Ｓ１０７：ＹＥＳ）、画像処理部７は、本フローチャートによる処理を終了し、データ出力部７０５に生成される圧縮後の各画像データを送信用画像データとして出力する。
【００９１】
実施の形態１では、データ列の符号化処理を実行する前に、各階調値の最下位ビットを０又は１の共通の値に書き換えることを特徴の１つとしている。ビット変換処理において変換する階調値はたかだか１に過ぎないので、この差を色差として人間の眼により認識することはほぼ不可能である。その一方で、ＲＧＢ各色及びアルファ値における最下位ビットを０又は１の共通の値に書き換えることにより、符号化対象のデータ列に現れる階調数を２５６（各階調値が８ビットの場合）から１２８に減らすことができるため、続く符号化処理において、互いに一致する部分データ列を検出する際に、より多くの部分データ列を検出できる可能性が高まり、また、より長い一致長で一致する部分データ列を検出できる可能性が高まる。この結果、従来のＰＮＧ形式で用いられていた圧縮アルゴリズムと比較して、圧縮率を高めることができる。
【００９２】
例えば、圧縮前の画像データが１．９ＭＢのデータサイズを有し、各画素がＲＧＢの３つのカラーチャンネル及び１つのアルファチャンネルからなる６４０画素×７６７画素のビットマップイメージを、従来のＰＮＧ形式による圧縮アルゴリズム（レベル９の最高圧縮を選択）で圧縮した場合、圧縮後の画像データのサイズは８８４ＫＢとなった。これに対し、本願発明の画像圧縮方法を適用した場合、圧縮後の画像データのサイズは７２０ＫＢとなり、レベル９の最高圧縮のＰＮＧ形式と比較しても、およそ１２０％程度の更なる高圧縮化が可能となった。
【００９３】
以上のように、本実施の形態では、写真シール作成装置で求められる画質を維持しつつ、画像データのデータ量を削減することができるので、写真シール作成装置から外部のサーバ装置へ画像データをアップロードする時間、及び外部のサーバ装置からユーザの端末に画像データをダウンロードする時間を短縮することができ、通信コストを抑制することができる。
【００９４】
実施の形態２．
実施の形態１では、ＲＧＢの３つのカラーチャンネル及び１つのアルファチャンネルの夫々について最下位ビットを０又は１の共通の値に書き換える構成としたが、カラーチャンネル毎の各階調値の出現頻度に基づいて、最下位ビットの書き換えを禁止すべきカラーチャンネルを決定する構成としてもよい。
実施の形態２では、カラーチャンネル毎の各階調値の出現頻度に基づいて、最下位ビットの書き換えを禁止すべきカラーチャンネルを決定し、決定したカラーチャンネルについては最下位ビットの書き換えを禁止する構成について説明を行う。なお、実施の形態２に係る写真シール作成装置の構成は、実施の形態１と全く同様であるため、その説明を省略することとする。
【００９５】
図９は実施の形態２に係る送信用画像データの生成手順を示すフローチャートである。画像処理部７は、圧縮対象の画像データを制御部６内のＨＤＤ６２から取得する（ステップＳ１２１）。取得した画像データは、画像処理部７内のデータ入力部７０１に記憶される。
【００９６】
画像処理部７は、データ入力部７０１に記憶した画像データについて、カラーチャンネル毎に各階調値の出現頻度を計数し（ステップＳ１２２）、計数結果をメモリ７１に保持する。
【００９７】
次いで、画像処理部７は、計数したカラーチャンネル毎の各階調値の出現頻度に基づき、ビット変換処理を禁止するカラーチャンネルを決定する（ステップＳ１２３）。このとき、画像処理部７は、カラーチャンネル毎の各階調値の出現頻度についてヒストグラムを生成する。そして、画像処理部７は、例えば、カラーチャンネル毎にヒストグラムの中央値を求め、求めた中央値が最も大きいカラーチャンネルについてのビット変換処理を禁止すべきと決定する。
【００９８】
なお、本実施の形態では、ヒストグラムの中央値によりビット変換処理を禁止すべきカラーチャンネルを決定する構成としたが、カラーチャンネル毎の各階調値の出現頻度に基づき、画質に影響を及ぼす可能性が高いカラーチャンネルを禁止すべきカラーチャンネルと決定すればよく、ヒストグラムの中央値に限らず、平均値、ヒストグラムのピーク最大値を与える階調値等を用いて決定してもよい。
【００９９】
次いで、画像処理部７は、データ入力部７０１に記憶した画像データから、入力バッファ７０２のバッファサイズ分だけ、各画素の階調値（ＲＧＢ値及びアルファ値）を順次読み込んで入力バッファ７０２に記憶させる（ステップＳ１２４）。
【０１００】
ビット変換処理部７０３は、入力バッファ７０２に生成させたデータ列における各階調値の最下位ビットのうち、ビット変換処理が禁止されたカラーチャンネル以外のカラーチャンネル及びアルファチャンネルについて、最下位ビットを０又は１の共通の値に書き換えるビット変換処理を行う（ステップＳ１２５）。
次いで、画像処理部７は、入力バッファ７０２に記憶させた全画素についてのビット変換処理が完了したか否かを判断し（ステップＳ１２６）、入力バッファ７０２内の全画素についてビット変換処理が完了していない場合（Ｓ１２６：ＮＯ）、処理をステップＳ１２５へ戻す。
【０１０１】
入力バッファ７０２に記憶させた全画素についてのビット変換処理が完了したと判断した場合（Ｓ１２６：ＹＥＳ）、入力バッファ７０２は、ビット変換処理後のデータ列を符号化処理部７０４へ出力する。
【０１０２】
次いで、画像処理部７は、ステップＳ１２１で取得した画像データを構成する全画素についてビット変換処理が完了したか否かを判断する（ステップＳ１２７）。画像データを構成する全画素についてビット変換処理が完了していない場合（Ｓ１２７：ＮＯ）、画像処理部７は、処理をステップＳ１２４へ戻し、Ｓ１２４以降の処理を続行する。
【０１０３】
ステップＳ１２１で取得した画像データを構成する全画素についてビット変換処理が完了したと判断した場合（Ｓ１２７：ＹＥＳ）、符号化処理部７０４は、ビット変換処理を行った後の全画素分のデータ列に対して、符号化処理を施す（ステップＳ１２８）。符号化処理部７０４は、例えば、ＰＮＧで採用されている圧縮アルゴリズムを用いて、データ列を符号化することができる。符号化処理部７０４は、符号化済みのデータ列をデータ出力部７０５へ出力する。
【０１０４】
画像処理部７は、全画像データに対する符号化処理が完了したか否かを判断する（ステップＳ１２９）。未処理の画像データが存在する場合（Ｓ１２９：ＮＯ）、画像処理部７は、処理をステップＳ１２１へ戻し、ステップＳ１２１以降の処理を続行する。
全画像データに対する符号化処理が完了した場合（Ｓ１２９：ＹＥＳ）、画像処理部７は、本フローチャートによる処理を終了し、データ出力部７０５に生成される圧縮後の各画像データを送信用画像データとして出力する。
【０１０５】
実施の形態２では、最下位ビットの階調値を０又は１の共通の値に変換した場合に画質に影響があるカラーチャンネルについてのビット変換処理を禁止するので、圧縮後の画質を低下させることなく、圧縮率の向上を見込むことができる。
【０１０６】
実施の形態３．
実施の形態１では、ＲＧＢの３つのカラーチャンネル及び１つのアルファチャンネルの夫々について最下位ビットを０又は１の共通の値に書き換える構成としたが、カラーチャンネル毎の各階調値の出現頻度に基づいて、最下位ビットより更に高位側のビットを書き換えるカラーチャンネルを決定する構成としてもよい。
実施の形態３では、カラーチャンネル毎の各階調値の出現頻度に基づいて、最下位ビットより更に高位側のビットを書き換えるカラーチャンネルを決定し、決定したカラーチャンネルについては更に高位側のビットを０又は１の共通の値に書き換える構成について説明を行う。なお、実施の形態３に係る写真シール作成装置の構成は、実施の形態１と全く同様であるため、その説明を省略することとする。
【０１０７】
図１０は実施の形態３に係る送信用画像データの生成手順を示すフローチャートである。画像処理部７は、圧縮対象の画像データを制御部６内のＨＤＤ６２から取得する（ステップＳ１３１）。取得した画像データは、画像処理部７内のデータ入力部７０１に記憶される。
【０１０８】
画像処理部７は、データ入力部７０１に記憶した画像データについて、カラーチャンネル毎に各階調値の出現頻度を計数し（ステップＳ１３２）、計数結果をメモリ７１に保持する。
【０１０９】
次いで、画像処理部７は、計数したカラーチャンネル毎の各階調値の出現頻度に基づき、最下位ビットより高位側のビット（例えば、最下位側から２ビット目乃至３ビット目）を０又は１の共通の値に書き換えるカラーチャンネルを決定する（ステップＳ１３３）。このとき、画像処理部７は、カラーチャンネル毎の各階調値の出現頻度についてヒストグラムを生成する。そして、画像処理部７は、例えば、ヒストグラムの中央値に対応する階調値をカラーチャンネル毎に求め、求めた階調値が最も小さいカラーチャンネルを、更に高位側のビットを０又は１の共通の値に書き換えるべきカラーチャンネルとして決定する。
【０１１０】
なお、本実施の形態では、ヒストグラムの中央値により高位側のビットを変換すべきカラーチャンネルを決定する構成としたが、カラーチャンネル毎の各階調値の出現頻度に基づき、高位側のビットを変換したとしても画質に影響を及ぼす可能性が低いカラーチャンネルを決定する構成とすればよく、ヒストグラムの中央値に限らず、平均値、ヒストグラムのピーク最大値を与える階調値等を用いて決定してもよい。
【０１１１】
次いで、画像処理部７は、データ入力部７０１に記憶した画像データから、入力バッファ７０２のバッファサイズ分だけ、各画素の階調値（ＲＧＢ値及びアルファ値）を順次読み込んで入力バッファ７０２に記憶させる（ステップＳ１３４）。
【０１１２】
次いで、ビット変換処理部７０３は、入力バッファ７０２に生成させたデータ列における各階調値の最下位ビットを０又は１の共通の値に書き換えると共に、ステップＳ１３３で決定したカラーチャンネルについては最下位側から２ビット目乃至３ビット目の階調値を０又は１の共通の値に書き換えるビット変換処理を行う（ステップＳ１３５）。
【０１１３】
次いで、画像処理部７は、入力バッファ７０２に記憶させた全画素についてのビット変換処理が完了したか否かを判断し（ステップＳ１３６）、入力バッファ７０２内の全画素についてビット変換処理が完了していない場合（Ｓ１３６：ＮＯ）、処理をステップＳ１３５へ戻す。
【０１１４】
入力バッファ７０２に記憶させた全画素についてのビット変換処理が完了したと判断した場合（Ｓ１３６：ＹＥＳ）、入力バッファ７０２は、ビット変換処理後のデータ列を符号化処理部７０４へ出力する。
【０１１５】
次いで、画像処理部７は、ステップＳ１０１で取得した画像データを構成する全画素についてビット変換処理が完了したか否かを判断する（ステップＳ１３７）。画像データを構成する全画素についてビット変換処理が完了していない場合（Ｓ１３７：ＮＯ）、画像処理部７は、処理をステップＳ１３４へ戻し、Ｓ１３４以降の処理を続行する。
【０１１６】
ステップＳ１３１で取得した画像データを構成する全画素についてビット変換処理が完了したと判断した場合（Ｓ１３７：ＹＥＳ）、符号化処理部７０４は、ビット変換処理を行った後の全画素分のデータ列に対して、符号化処理を施す（ステップＳ１３８）。符号化処理部７０４は、例えば、ＰＮＧで採用されている圧縮アルゴリズムを用いて、データ列を符号化することができる。符号化処理部７０４は、符号化済みのデータ列をデータ出力部７０５へ出力する。
【０１１７】
画像処理部７は、全画像データに対する符号化処理が完了したか否かを判断する（ステップＳ１３９）。未処理の画像データが存在する場合（Ｓ１３９：ＮＯ）、画像処理部７は、処理をステップＳ１３１へ戻し、ステップＳ１３１以降の処理を続行する。
全画像データに対する符号化処理が完了した場合（Ｓ１３９：ＹＥＳ）、画像処理部７は、本フローチャートによる処理を終了し、データ出力部７０５に生成される圧縮後の各画像データを送信用画像データとして出力する。
【０１１８】
実施の形態３では、最下位ビットだけでなく２ビット目乃至３ビット目の階調値を０又は１の共通の値に変換したとしても画質に影響が少ないカラーチャンネルを選択し、選択したカラーチャンネルについては、最下位ビットだけでなく２ビット目乃至３ビット目の階調値を０又は１の共通の値に変換するので、画質を低下させることなく、更なる圧縮率の向上を見込むことができる。
【０１１９】
実施の形態４．
実施の形態１では、ＲＧＢの３つのカラーチャンネル及び１つのアルファチャンネルの夫々について最下位ビットを０又は１の共通の値に書き換える構成としたが、アルファチャンネルにより略透明に設定されている画素については、カラーチャンネルで指定される色情報としての重要性は極めて低いため、そのような画素について更に高位側のビットを０又は１の共通の値に書き換える構成としてもよい。
実施の形態４では、各画素の透明度が閾値以上であるか否かを判断し、透明度が閾値以上の画素については最下位ビットだけでなく、更に高位側のビットを０又は１の共通の値に書き換える構成について説明を行う。なお、実施の形態４に係る写真シール作成装置の構成は、実施の形態１と全く同様であるため、その説明を省略することとする。
【０１２０】
図１１は実施の形態４に係る送信用画像データの生成手順を示すフローチャートである。画像処理部７は、圧縮対象の画像データを制御部６内のＨＤＤ６２から取得する（ステップＳ１４１）。取得した画像データは、画像処理部７内のデータ入力部７０１に記憶される。
【０１２１】
画像処理部７は、データ入力部７０１に記憶した画像データから、入力バッファ７０２のバッファサイズ分だけ、各画素の階調値（ＲＧＢ値及びアルファ値）を順次読み込み（ステップＳ１４２）、入力バッファ７０２内の各画素の透明度が予め設定した閾値以上であるか否かを判断する（ステップＳ１４３）。各画素の透明度は、例えば０から２５５までのアルファ値により指定されており、アルファ値が０の場合は透明、２５５の場合は不透明であるため、アルファ値が所定値以下（例えば、１以下）の場合に透明度が閾値以上であると判断することができる。
【０１２２】
特定の画素の透明度が閾値以上であると判断した場合（Ｓ１４３：ＹＥＳ）、ビット変換処理部７０３は、当該画素のカラーチャンネル及びアルファチャンネルの最下位ビットを０又は１の共通の値に書き換えると共に、カラーチャンネルの高位側のビットを０又は１の共通の値に書き換える（ステップＳ１４４）。ビット変換処理部７０３により書き換える高位側のビットとしては、最下位側から２ビット目を選択してもよく、最下位側から２ビット目及び３ビット目を選択してもよい。
【０１２３】
また、特定の画素の透明度が閾値未満であると判断した場合（Ｓ１４３：ＮＯ）、ビット変換処理部７０３は、当該画素のカラーチャンネル及びアルファチャンネルの最下位ビットを０又は１の共通の値に書き換る（ステップＳ１４５）。
【０１２４】
ステップＳ１４４又はＳ１４５でビット変換処理を行った後、画像処理部７は、入力バッファ７０２に記憶させた全画素についてのビット変換処理が完了したか否かを判断し（ステップＳ１４６）、入力バッファ７０２内の全画素についてビット変換処理が完了していない場合（Ｓ１４６：ＮＯ）、処理をステップＳ１４３へ戻す。
【０１２５】
入力バッファ７０２に記憶させた全画素についてのビット変換処理が完了したと判断した場合（Ｓ１４６：ＹＥＳ）、入力バッファ７０２は、ビット変換処理後のデータ列を符号化処理部７０４へ出力する。
【０１２６】
次いで、画像処理部７は、ステップＳ１４１で取得した画像データを構成する全画素についてビット変換処理が完了したか否かを判断する（ステップＳ１４７）。画像データを構成する全画素についてビット変換処理が完了していない場合（Ｓ１４７：ＮＯ）、画像処理部７は、処理をステップＳ１４２へ戻し、Ｓ１４２以降の処理を続行する。
【０１２７】
ステップＳ１４１で取得した画像データを構成する全画素についてビット変換処理が完了したと判断した場合（Ｓ１４７：ＹＥＳ）、符号化処理部７０４は、ビット変換処理を行った後の全画素分のデータ列に対して、符号化処理を施す（ステップＳ１４８）。符号化処理部７０４は、例えば、ＰＮＧで採用されている圧縮アルゴリズムを用いて、データ列を符号化することができる。符号化処理部７０４は、符号化済みのデータ列をデータ出力部７０５へ出力する。
【０１２８】
画像処理部７は、全画像データに対する符号化処理が完了したか否かを判断する（ステップＳ１４９）。未処理の画像データが存在する場合（Ｓ１４９：ＮＯ）、画像処理部７は、処理をステップＳ１４１へ戻し、ステップＳ１４１以降の処理を続行する。
全画像データに対する符号化処理が完了した場合（Ｓ１４９：ＹＥＳ）、画像処理部７は、本フローチャートによる処理を終了し、データ出力部７０５に生成される圧縮後の各画像データを送信用画像データとして出力する。
【０１２９】
実施の形態４では、各画素の透明度が閾値以上であるか否かを判断することにより、最下位ビットだけでなく２ビット目乃至３ビット目の階調値を０又は１の共通の値に変換したとしても画質に影響が少ない画素を選択し、選択した画素のカラーチャンネルについては、最下位ビットだけでなく２ビット目乃至３ビット目の階調値を０又は１の共通の値に変換するので、画質を低下させることなく、更なる圧縮率の向上を見込むことができる。
【０１３０】
実施の形態１〜４では、適用例の１つとして、写真シール作成装置に本願の画像圧縮方法を適用した形態について説明を行ったが、本願の画像圧縮方法は写真シール作成装置のみに適用されるものではなく、デジタルカメラ、スマートフォン等の携帯電話機、スレートＰＣを含むパーソナルコンピュータ、携帯型ゲーム機、画像データ等を蓄積するストレージ等の、画像データを処理し、記憶する様々な装置に適用できることは勿論のことである。
【０１３１】
今回開示された実施の形態は、全ての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上述した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【０１３２】
２  撮影部
５  印刷部
６  制御部
７  画像処理部
７０  ＣＰＵ
７２  ＨＤＤ
７Ｐ  画像処理プログラム
７０１  データ入力部
７０２  入力バッファ
７０３  ビット変換処理部
７０４  符号化処理部
７０５  データ出力部
【図１】
2015046701.tif 000003
【図２】
2015046701.tif 000004
【図３】
2015046701.tif 000005
【図４】
2015046701.tif 000006
【図５】
2015046701.tif 000007
【図６】
2015046701.tif 000008
【図７】
2015046701.tif 000009
【図８】
2015046701.tif 000010
【図９】
2015046701.tif 000011
【図１０】
2015046701.tif 000012
【図１１】
2015046701.tif 000013