(57)【要約】  コンピュータプログラムは、コンピュータに、複数の色成分を有するカラー画像を取得する処理と、カラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して濃淡画像を生成する処理と、濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する処理と、画素ブロック単位の画像変換によって濃淡画像を暗号化する処理と、暗号化された濃淡画像を出力する処理とを実行させる。
2019187609.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、画像処理を実行させるためのコンピュータプログラムであって、
コンピュータに、
複数の色成分を有するカラー画像を取得する処理と、
前記カラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して濃淡画像を生成する処理と、
前記濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する処理と、
前記画素ブロック単位の画像変換によって前記濃淡画像を暗号化する処理と、
暗号化された濃淡画像を出力する処理と
を実行させるコンピュータプログラム。
【請求項２】
コンピュータに、
ビットマップ形式のカラー画像を取得する処理を実行させる請求項１に記載のコンピュータプログラム。
【請求項３】
コンピュータに、
ビットマップ形式以外のカラー画像を取得する処理と、
前記ビットマップ形式以外のカラー画像をビットマップ形式に変換する処理と、
前記ビットマップ形式のカラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して濃淡画像を生成する処理と
を実行させる請求項１に記載のコンピュータプログラム。
【請求項４】
コンピュータに、
前記カラー画像の画素数に前記色成分の数を乗算した画素数を有する濃淡画像を生成する処理を実行させる請求項１から請求項３のいずれか一項に記載のコンピュータプログラム。
【請求項５】
コンピュータに、
前記画素ブロック単位の画像変換によって前記濃淡画像を知覚暗号化する処理を実行させる請求項１から請求項４のいずれか一項に記載のコンピュータプログラム。
【請求項６】
コンピュータに、
前記画素ブロック単位で、秘密鍵に基づいて前記濃淡画像での画素ブロックの位置を変換する処理、秘密鍵に基づいて前記画素ブロックを反転又は回転する処理、及び秘密鍵に基づいて前記画素ブロックの画素値を変換する処理の少なくとも一つの処理を実行させる請求項５に記載のコンピュータプログラム。
【請求項７】
コンピュータに、
前記濃淡画像を符号化画像に圧縮する処理と、
前記符号化画像を出力する処理と
を実行させる請求項１から請求項６のいずれか一項に記載のコンピュータプログラム。
【請求項８】
コンピュータに、
濃淡画像を符号化した符号化画像を取得する処理と、
取得した符号化画像を伸長する処理と、
伸長して得られた濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する処理と、
前記画素ブロック単位の画像変換によって前記濃淡画像を復号する処理と、
復号された濃淡画像の各画素の画素値を複数の色成分のいずれかに変換してカラー画像を生成する処理と、
生成したカラー画像を出力する処理と
を実行させる請求項１から請求項７のいずれか一項に記載のコンピュータプログラム。
【請求項９】
コンピュータに、
前記画素ブロック単位の画像変換によって前記濃淡画像を知覚復号する処理を実行させる請求項８に記載のコンピュータプログラム。
【請求項１０】
コンピュータに、画像処理を実行させるためのコンピュータプログラムであって、
コンピュータに、
濃淡画像を符号化した符号化画像を取得する処理と、
取得した符号化画像を伸長する処理と、
伸長して得られた濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する処理と、
前記画素ブロック単位の画像変換によって前記濃淡画像を復号する処理と、
復号された濃淡画像の各画素の画素値を複数の色成分のいずれかに変換してカラー画像を生成する処理と、
生成したカラー画像を出力する処理と
を実行させるコンピュータプログラム。
【請求項１１】
前記色成分は、輝度及び色差を含む請求項１から請求項１０のいずれか一項に記載のコンピュータプログラム。
【請求項１２】
コンピュータに、
前記色成分のうち色差成分を間引きする処理と、
輝度成分及び間引きされた色差成分を、濃淡を表す画素値に変換して濃淡画像を生成する処理と
を実行させる請求項１１に記載のコンピュータプログラム。
【請求項１３】
複数の色成分を有するカラー画像を取得する取得部と、
前記カラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して濃淡画像を生成する濃淡画像生成部と、
前記濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する分割部と、
前記画素ブロック単位の画像変換によって前記濃淡画像を暗号化する暗号化処理部と、
暗号化された濃淡画像を出力する出力部と
を備える画像処理装置。
【請求項１４】
複数の色成分を有するカラー画像を取得部が取得し、
前記カラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して濃淡画像を濃淡画像生成部が生成し、
前記濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割部が分割し、
前記画素ブロック単位の画像変換によって前記濃淡画像を暗号化処理部が暗号化し、
暗号化された濃淡画像を出力部が出力する画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、コンピュータプログラム、画像処理装置及び画像処理方法に関する。
本出願は、２０１８年３月３０日出願の日本出願第２０１８−０７０１９８号に基づく優先権を主張し、前記日本出願に記載された全ての記載内容を援用するものである。
【背景技術】
【０００２】
非特許文献１には、ＲＧＢ成分を有する画像データをブロックに分割し、ブロックの入替、ブロックの回転・反転などの処理により視覚的に認識困難にする知覚暗号化を行い、知覚暗号化された画像データを後段のＪＰＥＧ符号化するＥｔＣシステムが開示されている。【０００３】
ＪＰＥＧ符号化の処理は、ＲＧＢ成分を輝度成分Ｙ及び色差成分（ＣｒおよびＣｂ）に変換し、ＹＣｒＣｂの各成分を８×８ピクセルで構成されるブロックに区分した後、当該ブロック単位で行われる。この場合、人の視覚が輝度成分に比べて色差成分に対して弱く反応するという特性を利用して色差成分を間引きした上で符号化処理が行われる。【０００４】
具体的には、間引きした後の色差成分を８×８ビクセルのブロックにするために、間引き前のカラー画像に対する処理は、１６×１６ピクセルのブロックを一単位とする必要があり、知覚暗号化の処理も１６×１６ピクセルのブロック単位で行う必要がある。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Kenta KURIHARA, Masanori KIKUCHI, Shoko IMAIZUMI, Sayaka  SHIOTA and Hitoshi KIYA,“An Encryption-then-Compression System for JPEG/Motion   JPEG Standard”, IEICE TRANS. FUNDAMENTALS, VOL.E98-A, NO.11 NOVEMBER 2015
【発明の概要】
【０００６】
本開示の実施の形態に係るコンピュータプログラムは、コンピュータに、画像処理を実行させるためのコンピュータプログラムであって、コンピュータに、複数の色成分を有するカラー画像を取得する処理と、前記カラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して濃淡画像を生成する処理と、前記濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する処理と、前記画素ブロック単位の画像変換によって前記濃淡画像を暗号化する処理と、暗号化された濃淡画像を出力する処理とを実行させる。
【０００７】
本開示の実施の形態に係るコンピュータプログラムは、コンピュータに、画像処理を実行させるためのコンピュータプログラムであって、コンピュータに、濃淡画像を符号化した符号化画像を取得する処理と、取得した符号化画像を伸長する処理と、伸長して得られた濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する処理と、前記画素ブロック単位の画像変換によって前記濃淡画像を復号する処理と、復号された濃淡画像の各画素の画素値を複数の色成分のいずれかに変換してカラー画像を生成する処理と、生成したカラー画像を出力する処理とを実行させる。
【０００８】
本開示の実施の形態に係る画像処理装置は、複数の色成分を有するカラー画像を取得する取得部と、前記カラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して濃淡画像を生成する濃淡画像生成部と、前記濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する分割部と、前記画素ブロック単位の画像変換によって前記濃淡画像を暗号化する暗号化処理部と、暗号化された濃淡画像を出力する出力部とを備える。
【０００９】
本開示の実施の形態に係る画像処理方法は、複数の色成分を有するカラー画像を取得部が取得し、前記カラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して濃淡画像を濃淡画像生成部が生成し、前記濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割部が分割し、前記画素ブロック単位の画像変換によって前記濃淡画像を暗号化処理部が暗号化し、暗号化された濃淡画像を出力部が出力する。
【図面の簡単な説明】
【００１０】
【図１】本実施の形態の画像処理装置の構成の一例を示すブロック図である。
【図２】カラー画像から濃淡画像を生成する方法の一例を示す模式図である。
【図３】濃淡画像を画素ブロックに分割する方法の一例を示す模式図である。
【図４】知覚暗号化した画像の一例を示す説明図である。
【図５】画素ブロックのスクランブル処理の一例を示す模式図である。
【図６】画素ブロックの回転・反転処理の一例を示す模式図である。
【図７】画素ブロックのネガティブ・ポジティブ変換処理の一例を示す模式図である。
【図８】ＪＰＥＧ符号化の処理の一例を示す模式図である。
【図９】カラー画像を１６×１６画素ブロック単位で知覚暗号化処理した後に圧縮処理を行う場合の一例を示す模式図である。
【図１０】カラー画像を８×８画素ブロック単位で知覚暗号化処理した後に圧縮処理を行う場合の一例を示す模式図である。
【図１１】本実施の形態の画像処理装置による８×８画素ブロック単位で知覚暗号化処理した後に圧縮処理を行う場合の一例を示す模式図である。
【図１２】本実施の形態の画像処理装置による１６×１６画素ブロック単位で知覚暗号化処理した後に圧縮処理を行う場合の一例を示す模式図である。
【図１３】輝度成分及び色差成分から濃淡画像を生成する方法の一例を示す模式図である。
【図１４】本実施の形態の画像処理装置による知覚暗号化の安全性の評価結果の一例を示す説明図である。
【図１５】安全性の評価尺度の一例を示す説明図である。
【図１６】本実施の形態の画像処理装置による知覚暗号化を行った場合のＪＰＥＧ符号化の圧縮特性の一例を示す説明図である。
【図１７】本実施の形態の画像処理装置による知覚暗号化及び圧縮の処理手順の一例を示すフローチャートである。
【図１８】本実施の形態の画像処理装置による伸長及び知覚復号の処理手順の一例を示すフローチャートである。
【図１９】本実施の形態の画像処理装置を用いたＥｔＣシステムの構成の第１例を示す模式図である。
【図２０】本実施の形態の画像処理装置を用いたＥｔＣシステムの構成の第２例を示す模式図である。
【発明を実施するための形態】
【００１１】
［本開示が解決しようとする課題］
知覚暗号化された画像が秘密鍵をもたない不正者に認識されないようにするには、知覚暗号化処理する際のブロックのサイズが小さい方が好ましい。また、カラー画像の色情報を利用して知覚暗号化された画像の一部又は全部が復号される可能性もあり、セキュリティの高い暗号化処理が望まれる。
【００１２】
そこで、暗号化処理のセキュリティを向上することができるコンピュータプログラム、画像処理装置及び画像処理方法を提供することを目的とする。
【００１３】
［本開示の効果］
本開示によれば、暗号化処理のセキュリティを向上することができる。
【００１４】
［本開示の実施形態の説明］
本実施の形態に係るコンピュータプログラムは、コンピュータに、画像処理を実行させるためのコンピュータプログラムであって、コンピュータに、複数の色成分を有するカラー画像を取得する処理と、前記カラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して濃淡画像を生成する処理と、前記濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する処理と、前記画素ブロック単位の画像変換によって前記濃淡画像を暗号化する処理と、暗号化された濃淡画像を出力する処理とを実行させる。
【００１５】
本実施の形態に係る画像処理装置は、複数の色成分を有するカラー画像を取得する取得部と、前記カラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して濃淡画像を生成する濃淡画像生成部と、前記濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する分割部と、前記画素ブロック単位の画像変換によって前記濃淡画像を暗号化する暗号化処理部と、暗号化された濃淡画像を出力する出力部とを備える。
【００１６】
本実施の形態に係る画像処理方法は、複数の色成分を有するカラー画像を取得部が取得し、前記カラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して濃淡画像を濃淡画像生成部が生成し、前記濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割部が分割し、前記画素ブロック単位の画像変換によって前記濃淡画像を暗号化処理部が暗号化し、暗号化された濃淡画像を出力部が出力する。
【００１７】
コンピュータプログラムは、複数の色成分を有するカラー画像を取得し、取得したカラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して濃淡画像を生成する。複数の色成分は、例えば、ＲＧＢの各成分とすることができる。なお、色成分はＲＧＢに限定されない。色成分はＹＣｒＣｂ（輝度及び色差）の各成分とすることができる。また、色成分は、その他のカラーコード、例えば、Ｈｅｘ、ＨＳＶ、ＣＭＹＫ、ＸＹＺ、ＬＡＢ、ＨＳＬとすることもできる。濃淡画像の生成は、例えば、以下のようにすることができる。すなわち、カラー画像をＲチャネル、Ｇチャネル及びＢチャネルの３つのチャネルに分ける（色成分毎に分ける）。なお、色成分がＹＣｒＣｂである場合、カラー画像をＹチャネル、Ｃｒチャネル及びＣｂチャネルの３つのチャネルに分けることができる。各チャネルの画素値（Ｒ値、Ｇ値、Ｂ値）を輝度値Ｙ（濃淡を表す画素値）に変換する。例えば、０−２５５のＲ値を、そのまま０−２５５のＹ値に変換することができる。Ｇ値及びＢ値も同様である。これにより、例えば、Ｍ×Ｎピクセルのカラー画像（Ｃと表す）から、Ｒチャネルに対応するＭ×Ｎピクセルの濃淡画像（ＹＲと表す）、Ｇチャネルに対応するＭ×Ｎピクセルの濃淡画像（ＹＧと表す）、及びＢチャネルに対応するＭ×Ｎピクセルの濃淡画像（ＹＢと表す）を生成することができる。各チャネルに対応する濃淡画像を縦方向又は横方向に並べることにより、Ｍ×３Ｎピクセルの濃淡画像、あるいは３Ｍ×Ｎピクセルの濃淡画像（すなわち、カラー画像に対してピクセル数は３倍となる。ただし、ファイルサイズ又はデータサイズは同程度である）を生成することができる。
【００１８】
コンピュータプログラムは、生成した濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する。すなわち、画素ブロックは、８×８ピクセルでもよく、１６×１６ピクセルでもよく、あるいは３２×３２ピクセルでもよい。なお、暗号化処理のセキュリティを向上させるためには、画素ブロックのサイズは小さい方が好ましく、８×８ピクセルが望ましい。
【００１９】
コンピュータプログラムは、画素ブロック単位の画像変換によって濃淡画像を暗号化し、暗号化された濃淡画像を出力する。
【００２０】
暗号化された後の符号化（例えば、ＪＰＥＧ符号化など）を考慮すると、従来であれば、カラー画像に対する暗号化処理の基本単位は１６×１６ピクセルに制限される。上述の構成では、濃淡画像に変換されているので、符号化の際の色差成分の間引きを考慮する必要がない。これにより、画素ブロックのサイズを８×８ピクセルの如く小さいブロックの使用が可能となり、秘密鍵をもたない不正者が暗号化された濃淡画像を視覚的に認識することが困難となり、セキュリティを向上することができる。また、ＲＧＢ成分を有するカラー画像を濃淡画像に変換しているので、従来の１６×１６ピクセルのブロック数に比べて、画素ブロック数は、１２倍（＝４×３）となり、セキュリティを向上することができる。また、カラー画像を濃淡画像に変換しているので、カラー画像の色情報を利用して不正にカラー画像の一部又は全部が復号される可能性もなくなり、セキュリティを向上することができる。
【００２１】
本実施の形態に係るコンピュータプログラムは、コンピュータに、ビットマップ形式のカラー画像を取得する処理を実行させる。
【００２２】
コンピュータプログラムは、ビットマップ形式のカラー画像を取得する。ビットマップ形式のカラー画像は、ＢＭＰ（Microsoft Windows Bitmap Image）フォーマットの画像である。これにより、ＢＭＰフォーマットの画像に対する暗号化処理のセキュリティを向上することができる。
【００２３】
本実施の形態に係るコンピュータプログラムは、コンピュータに、ビットマップ形式以外のカラー画像を取得する処理と、前記ビットマップ形式以外のカラー画像をビットマップ形式に変換する処理と、前記ビットマップ形式のカラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して濃淡画像を生成する処理とを実行させる。
【００２４】
コンピュータプログラムは、ビットマップ形式以外のカラー画像を取得し、取得したビットマップ形式以外のカラー画像をビットマップ形式に変換し、ビットマップ形式のカラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して濃淡画像を生成する。ビットマップ形式以外のカラー画像は、例えば、ＪＰＥＧ（Joint Photographic Experts Group）、ＧＩＦ（Graphics Interchange Format）、ＰＮＧ（Portable Netpbm Format）などのフォーマットの画像を含む。これにより、ＢＭＰフォーマット以外のフォーマットの画像に対する暗号化処理のセキュリティを向上することができる。
【００２５】
本実施の形態に係るコンピュータプログラムは、コンピュータに、前記カラー画像の画素数に前記色成分の数を乗算した画素数を有する濃淡画像を生成する処理を実行させる。
【００２６】
コンピュータプログラムは、カラー画像の画素数に色成分の数を乗算した画素数を有する濃淡画像を生成する。色成分をＲＧＢの３つとすると、濃淡画像の画素数（ピクセル数）は、カラー画像の画素数の３倍となり、暗号化処理の際の画素ブロック数を３倍以上とすることができ、セキュリティを向上することができる。
【００２７】
本実施の形態に係るコンピュータプログラムは、コンピュータに、前記画素ブロック単位の画像変換によって前記濃淡画像を知覚暗号化する処理を実行させる。
【００２８】
コンピュータプログラムは、画素ブロック単位の画像変換によって濃淡画像を知覚暗号化する。知覚暗号化により、カラー画像を視覚的に認識困難にすることができ、不正な復号を困難にすることができる。また知覚暗号化された後も画像であり、暗号化後も符号化（圧縮）処理が可能であり、またデータの損傷に対して頑強性を有する。例えば、暗号化された画像データの一部が欠落した場合でも、画像全体が欠損とならずに、画像の一部の欠損で済む。また、整数論的な暗号化と比較して知覚暗号化は、ブロックベースの処理であるため比較的処理が軽いという特徴を有する。
【００２９】
本実施の形態に係るコンピュータプログラムは、コンピュータに、前記画素ブロック単位で、秘密鍵に基づいて前記濃淡画像での画素ブロックの位置を変換する処理、秘密鍵に基づいて前記画素ブロックを反転又は回転する処理、及び秘密鍵に基づいて前記画素ブロックの画素値を変換する処理の少なくとも一つの処理を実行させる。
【００３０】
コンピュータプログラムは、画素ブロック単位で、秘密鍵に基づいて濃淡画像での画素ブロックの位置を変換する処理、秘密鍵に基づいて画素ブロックを反転又は回転する処理、及び秘密鍵に基づいて画素ブロックの画素値を変換する処理の少なくとも一つの処理を行う。
【００３１】
画素ブロックの位置を変換する処理は、ブロックスクランブル（ブロックの入替）とも称し、例えば、秘密鍵によって生成された乱数を用いて、濃淡画像内の画素ブロックの位置を順番に変更する。
【００３２】
画素ブロックを反転は、例えば、画素ブロックの上下反転及び左右反転させる処理であり、画素ブロックを回転は、例えば、画素ブロックを反時計回り又は時計回りに９０度ずつ回転させる処理であり、秘密鍵によって生成された乱数を用いて、濃淡画像内の画素ブロック毎に反転又は回転を行う。
【００３３】
画素ブロックの画素値を変換する処理は、ネガティブ・ポジティブ変換とも称し、例えば、秘密鍵によって生成された二値（０及び１）を用いて、画素ブロックの画素値を変換する。例えば、二値が０の場合には、画素ブロック内の画素値をそのままにして変更しない。二値が１の場合には、画素ブロック内の画素値を所定値（例えば、画素値が０−２５５の場合、所定値は１２８とすることができる）を中心にして画素値を反転させる。例えば、画素値０は２５５に変換し、画素値２５５は０に変換する。
【００３４】
上述の構成により、視覚的に認識困難な知覚暗号化された画像を生成することができる。
【００３５】
本実施の形態に係るコンピュータプログラムは、コンピュータに、前記濃淡画像を符号化画像に圧縮する処理と、前記符号化画像を出力する処理とを実行させる。
【００３６】
コンピュータプログラムは、濃淡画像を符号化画像に圧縮し、符号化画像を出力する。符号化画像は、例えば、ＪＰＥＧ画像でもよい。ＪＰＥＧ符号化では、８×８ピクセルのブロック単位で処理が行われる。濃淡画像の暗号化（知覚暗号化）は、８×８ピクセルの画素ブロック単位で行われるので、知覚暗号化された画像に対して圧縮処理を行っても、暗号化された画素ブロックの状態を保持したまま圧縮されるので、伸長した後も元の画像を復号することができる。
【００３７】
本実施の形態に係るコンピュータプログラムは、コンピュータに、濃淡画像を符号化した符号化画像を取得する処理と、取得した符号化画像を伸長する処理と、伸長して得られた濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する処理と、前記画素ブロック単位の画像変換によって前記濃淡画像を復号する処理と、復号された濃淡画像の各画素の画素値を複数の色成分のいずれかに変換してカラー画像を生成する処理と、生成したカラー画像を出力する処理とを実行させる。
【００３８】
本実施の形態に係るコンピュータプログラムは、コンピュータに、画像処理を実行させるためのコンピュータプログラムであって、コンピュータに、濃淡画像を符号化した符号化画像を取得する処理と、取得した符号化画像を伸長する処理と、伸長して得られた濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する処理と、前記画素ブロック単位の画像変換によって前記濃淡画像を復号する処理と、復号された濃淡画像の各画素の画素値を複数の色成分のいずれかに変換してカラー画像を生成する処理と、生成したカラー画像を出力する処理とを実行させる。
【００３９】
コンピュータプログラムは、濃淡画像を符号化した符号化画像を取得し、取得した符号化画像を伸長する。コンピュータプログラムは、伸長して得られた濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する。濃淡画像は、カラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して生成された画像である。
【００４０】
コンピュータプログラムは、画素ブロック単位の画像変換によって濃淡画像を復号し、復号された濃淡画像の各画素の画素値を複数の色成分のいずれかに変換してカラー画像を生成し、生成したカラー画像を出力する。例えば、Ｒチャネルに対応するＭ×Ｎピクセルの濃淡画像の輝度値をＭ×Ｎピクセルのカラー画像のＲ値に変換し、Ｇチャネルに対応するＭ×Ｎピクセルの濃淡画像の輝度値を当該カラー画像のＧ値に変換し、Ｂチャネルに対応するＭ×Ｎピクセルの濃淡画像の輝度値を当該カラー画像のＢ値に変換することができる。これにより、暗号化及び圧縮される前の元のカラー画像を出力することができる。
【００４１】
本実施の形態に係るコンピュータプログラムは、コンピュータに、前記画素ブロック単位の画像変換によって前記濃淡画像を知覚復号する処理を実行させる。
【００４２】
コンピュータプログラムは、画素ブロック単位の画像変換によって濃淡画像を知覚復号する。これにより、知覚暗号化前の濃淡画像を得ることができる。
【００４３】
本実施の形態に係るコンピュータプログラムにおいて、前記色成分は、輝度及び色差を含む。
【００４４】
色成分は、例えば、ＹＣｒＣｂ（輝度及び色差）を含めることができる。この場合、濃淡画像の生成は、例えば、カラー画像をＹチャネル、Ｃｒチャネル及びＣｂチャネルの３つのチャネルに分ける（色成分毎に分ける）ことができ、各チャネルの値（Ｙ値、Ｃｒ値、Ｃｂ値）を輝度値Ｙ（濃淡を表す画素値）に変換することができる。
【００４５】
本実施の形態に係るコンピュータプログラムは、コンピュータに、前記色成分のうち色差成分を間引きする処理と、輝度成分及び間引きされた色差成分を、濃淡を表す画素値に変換して濃淡画像を生成する処理とを実行させる。
【００４６】
色成分は、例えば、ＹＣｒＣｂ（輝度及び色差）とすることができる。なお、ＹＣｒＣｂの各成分は、所定の変換式によってＲＧＢ成分から変換することができる。例えば、Ｍ×ＮピクセルのＲＧＢ画像をＭ×ＮピクセルのＹＣｒＣｂ画像に変換したとする。色差情報（Ｃｒ、Ｃｂ）は、人の目に違いが分かりづらいので、知覚暗号化の際に間引くことが考えられる。具体的には、Ｍ×ＮピクセルのＹ画像は間引きをしない。Ｃｒ画像については、例えば、水平方向と垂直方向の両方を間引くことにより、（Ｍ／２）×（Ｎ／２）ピクセルの画像にする。Ｃｂ画像についても同様に、（Ｍ／２）×（Ｎ／２）ピクセルの画像にする。なお、水平方向と垂直方向の両方を間引く方法に代えて、水平方向のみ、あるいは垂直方向のみ間引く手法でもよい。
【００４７】
ＹＣｒＣｂ画像を、Ｙチャネル、Ｃｒチャネル及びＣｂチャネルの３つのチャネルに分けて、それぞれのチャネルの値を輝度値Ｙ（濃淡を表す画素値）に変換して、濃淡画像を生成することができる。この場合、生成された濃淡画像は、（３Ｍ／２）×Ｎピクセルの画像となり、知覚暗号化の画像サイズを、間引きを行わない場合に比べて１／２にすることができる。
【００４８】
［本開示の実施形態の詳細］
以下、本開示の実施の形態を図面に基づいて説明する。図１は本実施の形態の画像処理装置１００の構成の一例を示すブロック図である。画像処理装置１００は、入力部１０、画像メモリ２０、画像処理部３０、出力部４０及び記憶部５０を備える。画像処理部３０は、濃淡画像生成部３１、画素ブロック分割部３２、暗号化処理部３３、圧縮処理部３４、伸長処理部３５、復号処理部３６、カラー画像生成部３７、及び画像変換部３８を備える。画像処理装置１００は、例えば、スマートフォン、タブレット、パーソナルコンピュータなどであってもよい。
【００４９】
画像処理装置１００は、画像（カラー画像）を取得して暗号化するとともに圧縮して出力する暗号・圧縮動作、及び圧縮された画像（濃淡画像）を取得して伸長化するとともに復号して出力する伸長・復号動作を行う。まず、暗号・圧縮動作について説明する。
【００５０】
入力部１０は、取得部としての機能を有し、複数の色成分を有するカラー画像を取得する。複数の色成分は、例えば、ＲＧＢの各成分とすることができる。なお、色成分はＲＧＢに限定されない。色成分はＹＣｒＣｂ（輝度及び色差）の各成分とすることができる。また、色成分は、その他のカラーコード、例えば、Ｈｅｘ、ＨＳＶ、ＣＭＹＫ、ＸＹＺ、ＬＡＢ、ＨＳＬとすることもできる。入力部１０は、取得したカラー画像を画像メモリ２０に記憶することができる。この場合、画像処理部３０は、画像メモリ２０からカラー画像を読み出すことができる。また、入力部１０は、取得したカラー画像を画像処理部３０へ出力することもできる。
【００５１】
より具体的には、入力部１０は、ビットマップ形式のカラー画像を取得することができる。ビットマップ形式のカラー画像は、ＢＭＰ（Microsoft Windows Bitmap Image）フォーマットの画像である。これにより、後述のように、ＢＭＰフォーマットの画像に対する暗号化処理・圧縮処理を行うことができる。
【００５２】
また、入力部１０は、ビットマップ形式以外のカラー画像を取得することができる。ビットマップ形式以外のカラー画像は、例えば、ＪＰＥＧ（Joint Photographic Experts Group）、ＧＩＦ（Graphics Interchange Format）、ＰＮＧ（Portable Netpbm Format）などのフォーマットの画像を含む。これにより、後述のように、ＢＭＰフォーマット以外のフォーマトの画像に対する暗号化処理・圧縮処理を行うことができる。
【００５３】
画像変換部３８は、入力部１０でビットマップ形式以外のカラー画像を取得した場合、ビットマップ形式以外のカラー画像をビットマップ形式のカラー画像に変換することができる。
【００５４】
濃淡画像生成部３１は、取得したカラー画像の複数の色成分それぞれを、濃淡を表す画素値に変換して濃淡画像を生成する。
【００５５】
図２はカラー画像から濃淡画像を生成する方法の一例を示す模式図である。図２に示すように、カラー画像Ｃの画素数を、例えば、Ｍ×Ｎピクセル（画素）とする。Ｍ×Ｎは、例えば、６４０×４８０でもよく、５１２×５１２などでもよい。カラー画像Ｃの各画素は、ＲＧＢの色成分を有し、一つの画素は、Ｒ値（例えば、０−２５５）、Ｇ値（例えば、０−２５５）、Ｂ値（例えば、０−２５５）のデータを有する。
【００５６】
濃淡画像生成部３１は、カラー画像ＣをＲチャネル、Ｇチャネル及びＢチャネルの３つのチャネルに分け色成分毎に分け、各チャネルの画素値（Ｒ値、Ｇ値、Ｂ値）を輝度値Ｙ（濃淡を表す画素値）に変換する。例えば、０−２５５のＲ値を、そのまま０−２５５のＹ値に変換することができる。Ｇ値及びＢ値も同様である。なお、色成分は、例えば、ＹＣｒＣｂ（輝度及び色差）を含めることができる。この場合、濃淡画像生成部３１は、例えば、カラー画像をＹチャネル、Ｃｒチャネル及びＣｂチャネルの３つのチャネルに分ける（色成分毎に分ける）ことができ、各チャネルの値（Ｙ値、Ｃｒ値、Ｃｂ値）を輝度値Ｙ（濃淡を表す画素値）に変換することができる。
【００５７】
これにより、例えば、Ｍ×Ｎピクセルのカラー画像Ｃから、Ｒチャネルに対応するＭ×Ｎピクセルの濃淡画像ＹＲ、Ｇチャネルに対応するＭ×Ｎピクセルの濃淡画像ＹＧ、及びＢチャネルに対応するＭ×Ｎピクセルの濃淡画像ＹＢを生成することができる。各チャネルに対応する濃淡画像を縦方向又は横方向に並べることにより、Ｍ×３Ｎピクセルの濃淡画像、あるいは３Ｍ×Ｎピクセルの濃淡画像（すなわち、カラー画像Ｃに対してピクセル数は３倍となる。ただし、ファイルサイズ又はデータサイズは同程度である）を生成することができる。なお、縦方向又は横方向に並べるのは、便宜上、濃淡画像を把握しやすくするためであり、一つのカラー画像に対応付けられていれば縦方向又は横方向に並べていなくてもよい。
【００５８】
濃淡画像生成部３１は、カラー画像の画素数に色成分の数を乗算した画素数を有する濃淡画像を生成することができる。色成分をＲＧＢの３つとすると、濃淡画像の画素数（ピクセル数）は、カラー画像の画素数の３倍となる。これにより、後述の暗号化処理の際の画素ブロック数を３倍とすることができ、セキュリティを向上することができる。
【００５９】
画素ブロック分割部３２は、濃淡画像生成部３１で生成した濃淡画像を８×８ピクセルで構成されるブロックサイズの整数倍の画素ブロックに分割する。
【００６０】
図３は濃淡画像を画素ブロックに分割する方法の一例を示す模式図である。図３では、Ｍ×Ｎピクセルのカラー画像から生成した３Ｍ×Ｎピクセルの濃淡画像を図示している。図中、１２×４のブロックは、画素ブロックである。図中、画素ブロックのピクセルをｄ１×ｄ２としている。なお、ｄ１とｄ２とは異なっていてもよく、あるいは等しくてもよい。この場合、ｄ１、ｄ２は８の倍数でもよい。なお、暗号化処理のセキュリティを向上させるためには、画素ブロックのサイズは小さい方が好ましく、例えば、８×８ピクセルが望ましい。
【００６１】
図３では、画素ブロック数は、便宜上４８であるが、例えば、カラー画像の画素数を５１２×５１２ピクセルとすると、濃淡画像の画素数は、１５３６×５１２ピクセルとなる。画素ブロックのピクセルを８×８ピクセルとすると、一つの濃淡画像内の画素ブロック数は、１２２８８となる。
【００６２】
暗号化処理部３３は、画素ブロック単位の画像変換によって濃淡画像を暗号化する。
【００６３】
より具体的には、暗号化処理部３３は、画素ブロック単位の画像変換によって濃淡画像を知覚暗号化する。
【００６４】
図４は知覚暗号化した画像の一例を示す説明図である。図中、左側の図は知覚暗号化前の原画像を示す。中央の画像は、知覚暗号化された画像（知覚暗号化画像）を示す。右側の図は部分的に知覚暗号化した画像を表す。図４に示すように、知覚暗号化により、カラー画像を視覚的に認識困難にすることができ、不正な復号を困難にすることができる。また知覚暗号化された後も画像であり、知覚暗号化後も符号化（圧縮）処理が可能であり、またデータの損傷に対して頑強性を有する。例えば、暗号化された画像データの一部が欠落した場合でも、画像全体が欠損とならずに、画像の一部の欠損で済む。また、整数論的な暗号化と比較して知覚暗号化は、ブロックベースの処理であるため比較的処理が軽いという特徴を有する。
【００６５】
次に、知覚暗号化処理の詳細について説明する。
【００６６】
暗号化処理部３３は、画素ブロック単位で、秘密鍵に基づいて濃淡画像での画素ブロックの位置を変換する処理、秘密鍵に基づいて画素ブロックを反転又は回転する処理、及び秘密鍵に基づいて画素ブロックの画素値を変換する処理の少なくとも一つの処理を行うことができる。
【００６７】
図５は画素ブロックのスクランブル処理の一例を示す模式図である。上段の図はスクランブル処理前の濃淡画像（３Ｍ×Ｎピクセル）の画素ブロックを示し、下段の図はスクランブル処理後の濃淡画像（３Ｍ×Ｎピクセル）の画素ブロックを示す。上段の図に示すように、スクランブル処理前の濃淡画像（３Ｍ×Ｎピクセル）の画素ブロックを順番に１〜４８とする。画素ブロックの位置を変換する処理は、ブロックスクランブル（ブロックの入替）とも称し、例えば、秘密鍵Ｋ１によって生成された乱数を用いて、濃淡画像内の画素ブロックの位置を順番に変更する。具体的には、生成された乱数に応じて、スクランブル処理前の濃淡画像の画素ブロックをそのままにして画素ブロックの位置を変更しない場合、及び生成された乱数に応じて下段の図に示すように、画素ブロックの位置を変換する場合がある。画素ブロックの位置を変換する場合、図５に示すように、スクランブル処理の前後において、画素ブロック１〜４８の位置は変更されている。
【００６８】
図６は画素ブロックの回転・反転処理の一例を示す模式図である。上段の図は回転・反転処理前の画素ブロック（元の画素ブロックとも称する）を示し、下段の図は回転・反転処理後の画素ブロックを示す。符号ａ１で示す画素ブロックは、元の画素ブロックをそのままにして回転・反転処理を行わないものであり、符号ａ２で示す画素ブロックは、元の画素ブロックを半時計回りに９０度回転させたものであり、符号ａ３で示す画素ブロックは、元の画素ブロックを半時計回りに１８０度回転させたものであり、符号ａ４で示す画素ブロックは、元の画素ブロックを半時計回りに２７０度回転させたものである。また、符号ａ５で示す画素ブロックは、元の画素ブロックを左右反転（水平方向の反転）させたものであり、符号ａ６で示す画素ブロックは、元の画素ブロックを上下反転（垂直方向の反転）させたものであり、符号ａ７で示す画素ブロックは、元の画素ブロックを左右反転（水平方向の反転）させ、さらに上下反転（垂直方向の反転）させたものである。
【００６９】
画素ブロックを反転は、例えば、画素ブロックの上下反転及び左右反転させる処理であり、画素ブロックを回転は、例えば、画素ブロックを反時計回り又は時計回りに９０度ずつ回転させる処理であり、秘密鍵Ｋ２によって生成された乱数を用いて、濃淡画像内の画素ブロック毎に反転又は回転を行う。
【００７０】
図７は画素ブロックのネガティブ・ポジティブ変換処理の一例を示す模式図である。上段の図はネガティブ・ポジティブ変換処理前の画素ブロックを示し、下段の図はネガティブ・ポジティブ変換処理後の画素ブロックを示す。
【００７１】
画素ブロックの画素値を変換する処理は、ネガティブ・ポジティブ変換とも称し、例えば、秘密鍵Ｋ３によって生成された二値（０及び１）を用いて、画素ブロックの画素値Ｙｉを変換する。例えば、二値が０の場合には、符号ｂ１で示すように、画素ブロック内の画素値Ｙｉをそのままにして変更しない。二値が１の場合には、符号ｂ２で示すように、画素ブロック内の画素値Ｙｉを所定値Ｙｉ′（例えば、画素値が０−２５５の場合、所定値は１２８とすることができる）を中心にして画素値を反転させる。例えば、画素値０は２５５に変換し、画素値２５５は０に変換することができる。
【００７２】
上述の構成により、視覚的に認識困難な知覚暗号化された画像を生成することができる。
【００７３】
圧縮処理部３４は、暗号化処理部３３で知覚暗号化された濃淡画像を圧縮して符号化画像を生成する。以下では、圧縮処理として、ＪＰＥＧ形式での圧縮処理について説明する。圧縮処理は、ＪＰＥＧ符号化、符号化処理とも称する。
【００７４】
図８はＪＰＥＧ符号化の処理の一例を示す模式図である。図８に示すように、ＪＰＥＧ符号化では、ビットマップ（ＢＭＰ）形式のカラー画像のＲ、Ｇ、Ｂの各成分をＹ、Ｃｒ、Ｃｂの各成分に変換する（色空間の変換）。ここで、Ｙは輝度成分であり、Ｃｒ及びＣｂは色差成分である。
【００７５】
ＹＣｒＣｂの各成分を８×８画素ごとのブロックに区分してＤＣＴ（Discrete Cosine Transform）を行う。ＤＣＴは、ＹＣｒＣｂの各信号をコサイン波の成分量を表す係数値の集まりとして表現する。各周波数成分は、空間的な変化の度合いに応じてＤＣ成分とＡＣ成分に変換される。
【００７６】
ＤＣＴ係数の量子化では、係数値を量子化する。人の視覚特性には小さな波の変動を敏感に認識することができないという性質があるため、ＡＣ成分の情報がある程度失われたとしても画像の画質劣化として認識されにくい。このような特性を利用して係数の量子化を行う。
【００７７】
エントロピー符号化では、量子化された係数の集まりから冗長な情報を取り除き、より少ないビット数で画像を表現する。具体的には、ＤＣ成分の係数は、隣接するブロックのＤＣ成分と近い値をとる傾向があるので、ＤＣ成分を予測符号化する。係数値を量子化すると、絶対値が小さい係数は０に置き換わるため、ＥＯＢ（End of Block）を導入することで係数に０が並んでいることを少ない情報量で表現することができる。また、ＡＣ成分は、例えば、ランレングス符号化とハフマン符号化を組み合わせてビット例に変換することができる。
【００７８】
次に、比較例として、カラー画像に対して、知覚暗号化処理を施した後に圧縮処理（ＪＰＥＧ符号化）する場合の問題について説明する。以下では、知覚暗号化処理を、１６×１６画素ブロック単位で行う場合と、８×８画素ブロック単位で行う場合について説明する。
【００７９】
図９はカラー画像を１６×１６画素ブロック単位で知覚暗号化処理した後に圧縮処理を行う場合の一例を示す模式図である。便宜上、３２×３２ピクセルのカラー画像を例として説明する。図９に示すように、１６×１６画素ブロック単位で知覚暗号化されたカラー画像のＲＧＢ成分は、ＹＣｒＣｂ成分に変換される。ＹＣｒＣｂの成分においても、知覚暗号化された各画素ブロックの状態は保持されたままである。
【００８０】
ＪＰＥＧ符号化においては、情報量を大幅に削減するために、色差成分（Ｃｒ及びＣｂ）を間引きすることができる。人の視覚特性が輝度成分Ｙに対しては強く反応するのに対して、色差成分に対しては弱く反応するからである。間引き処理は、色差成分（Ｃｒ及びＣｂ）については、輝度成分Ｙのピクセルの１／２×１／２のピクセルにする。すなわち、図９に示すように、Ｃｒ成分の１６×１６画素ブロックの画素は、間引きされて８×８画素ブロックに変換される。同様に、Ｃｂ成分の１６×１６画素ブロックの画素は、間引きされて８×８画素ブロックに変換される。
【００８１】
ＤＣＴは、８×８画素のブロック単位で処理が行われるので、知覚暗号化された状態を保持したまま圧縮される。このため、圧縮された画像を伸長して知覚復号すれば、元のカラー画像を得ることができる。
【００８２】
図１０はカラー画像を８×８画素ブロック単位で知覚暗号化処理した後に圧縮処理を行う場合の一例を示す模式図である。図１０に示すように、８×８画素ブロック単位で知覚暗号化されたカラー画像のＲＧＢ成分は、ＹＣｒＣｂ成分に変換される。ＹＣｒＣｂの成分においても、知覚暗号化された各画素ブロックの状態は保持されたままである。
【００８３】
ＪＰＥＧ符号化において、間引き処理を行うと、図１０に示すように、Ｃｒ成分の８×８画素ブロックの画素は、間引きされて４×４画素ブロックに変換される。同様に、Ｃｂ成分の８×８画素ブロックの画素は、間引きされて４×４画素ブロックに変換される。
【００８４】
ＤＣＴは、８×８画素のブロック単位で処理が行われるので、４×４画素ブロック単位で知覚暗号化された４つの画素ブロックが一つの単位として圧縮処理され、知覚暗号化された状態を保持することができない。このため、圧縮された画像を伸長して知覚復号しても元のカラー画像を得ることができない。
【００８５】
次に、本実施の形態の画像処理装置１００により知覚暗号化処理を施した後に圧縮処理（ＪＰＥＧ符号化）する場合について説明する。以下では、知覚暗号化処理を、８×８画素ブロック単位で行う場合と、１６×１６画素ブロック単位で行う場合について説明する。
【００８６】
図１１は本実施の形態の画像処理装置１００による８×８画素ブロック単位で知覚暗号化処理した後に圧縮処理を行う場合の一例を示す模式図である。便宜上、３２×３２ピクセルのカラー画像を例として説明する。本実施の形態では、濃淡画像生成部３１は、３２×３２ピクセルのカラー画像から９６×３２ピクセルの濃淡画像を生成する。画素ブロック分割部３２により、濃淡画像は８×８画素ブロックに分割される。暗号化処理部３３により、８×８画素ブロック単位で知覚暗号化される。
【００８７】
ＪＰＥＧ符号化において、ＤＣＴは、８×８画素のブロック単位で処理が行われるので、知覚暗号化された状態を保持したまま圧縮される。このため、圧縮された濃淡画像を伸長して知覚復号し、復号した濃淡画像を各色成分のチャネル単位で結合すれば、元のカラー画像を得ることができる。
【００８８】
図１２は本実施の形態の画像処理装置１００による１６×１６画素ブロック単位で知覚暗号化処理した後に圧縮処理を行う場合の一例を示す模式図である。本実施の形態では、濃淡画像生成部３１は、３２×３２ピクセルのカラー画像から９６×３２ピクセルの濃淡画像を生成する。画素ブロック分割部３２により、濃淡画像は１６×１６画素ブロックに分割される。暗号化処理部３３により、１６×１６画素ブロック単位で知覚暗号化される。
【００８９】
ＪＰＥＧ符号化において、ＤＣＴは、８×８画素のブロック単位で処理が行われるので、知覚暗号化された複数の画素ブロックが一つの単位として圧縮処理されることがなく、知覚暗号化された状態を保持したまま圧縮される。このため、圧縮された濃淡画像を伸長して知覚復号し、復号した濃淡画像を各色成分のチャネル単位で結合すれば、元のカラー画像を得ることができる。
【００９０】
ＪＰＥＧ符号化では、８×８ピクセルのブロック単位で処理が行われる。濃淡画像の暗号化（知覚暗号化）は、８×８ピクセルの画素ブロック単位で行われるので、知覚暗号化された画像に対して圧縮処理を行っても、暗号化された画素ブロックの状態を保持したまま圧縮されるので、伸長した後も元の画像を復号することができる。
【００９１】
上述のように、暗号化された後の符号化（例えば、ＪＰＥＧ符号化など）を考慮すると、従来であれば、カラー画像に対する暗号化処理の基本単位は１６×１６ピクセルに制限される。上述の構成では、濃淡画像に変換されているので、符号化の際の色差成分の間引きを考慮する必要がない。これにより、画素ブロックのサイズを８×８ピクセルの如く小さいブロックの使用が可能となり、秘密鍵をもたない不正者が暗号化された濃淡画像を視覚的に認識することが困難となり、セキュリティを向上することができる。
【００９２】
また、ＲＧＢ成分を有するカラー画像を濃淡画像に変換しているので、従来の１６×１６ピクセルのブロック数に比べて、画素ブロック数は、１２倍（＝４×３）となり、セキュリティを向上することができる。
【００９３】
また、カラー画像を濃淡画像に変換しているので、カラー画像の色情報を利用して不正にカラー画像の一部又は全部が復号される可能性もなくなり、セキュリティを向上することができる。
【００９４】
出力部４０は、暗号化処理部３３で暗号化（例えば、知覚暗号化）した濃淡画像を、例えば、外部のサーバ等へ出力することができる。また、出力部４０は、圧縮処理部３４で圧縮した濃淡画像を外部のサーバ等へ出力してもよい。
【００９５】
記憶部５０は、秘密鍵Ｋ１、Ｋ２、Ｋ３などを記憶することができる。
【００９６】
次に、色成分として、例えば、ＹＣｒＣｂ（輝度及び色差）を用いる場合の間引き処理について説明する。
【００９７】
図１３は輝度成分及び色差成分から濃淡画像を生成する方法の一例を示す模式図である。図１３に示すように、カラー画像Ｃの画素数を、例えば、Ｍ×Ｎピクセル（画素）とする。Ｍ×Ｎは、例えば、６４０×４８０でもよく、５１２×５１２などでもよい。画像変換部３８は、カラー画像ＣのＲＧＢ成分を、所定の変換式によってＹＣｂＣｒ成分の画像に変換する。変換後のＹ画像、Ｃｂ画像及びＣｒ画像は、それぞれＭ×Ｎピクセルの画像である。
【００９８】
色差情報（Ｃｒ、Ｃｂ）は、人の目に違いが分かりづらいので、知覚暗号化の際に間引くことが考えられる。具体的には、Ｍ×ＮピクセルのＹ画像は間引きをしない。Ｃｒ画像については、例えば、水平方向と垂直方向の両方を間引くことにより、（Ｍ／２）×（Ｎ／２）ピクセルの画像にする。Ｃｂ画像についても同様に、（Ｍ／２）×（Ｎ／２）ピクセルの画像にする。なお、水平方向と垂直方向の両方を間引く方法に代えて、水平方向のみ、あるいは垂直方向のみ間引く手法でもよい。
【００９９】
ＹＣｒＣｂ画像を、Ｙチャネル、Ｃｒチャネル及びＣｂチャネルの３つのチャネルに分けて、それぞれのチャネルの値を輝度値Ｙ（濃淡を表す画素値）に変換して、濃淡画像を生成することができる。この場合、生成された濃淡画像は、（３Ｍ／２）×Ｎピクセルの画像となり、知覚暗号化の画像サイズを、間引きを行わない場合に比べて１／２にすることができる。
【０１００】
図１４は本実施の形態の画像処理装置１００による知覚暗号化の安全性の評価結果の一例を示す説明図である。図１４では、比較例として、ＲＧＢのカラー画像に対して知覚暗号化した場合の例についても記載している。図１４において、Ｄｃ、Ｎｃ及びＬｃは安全性の評価尺度を表す。
【０１０１】
図１５は安全性の評価尺度の一例を示す説明図である。図１５では、便宜上、符号Ａ〜Ｊで示す１０個のブロックで構成される画像を用いて説明する。この場合、ブロックの隣接境界数は１３となる。
【０１０２】
Ｄｃ（Direct Comparison）は、画像のブロックが正しい位置に復元できた割合を示す。Ｎｃ（Neighbor Comparison）は、ブロックに隣接しているブロックの正しい割合を示す。Ｌｃ（Largest Comparison）は、ブロックの位置関係に関わらず、連結的に正しく復元できた割合を示す。
【０１０３】
図１５の例１の場合、１０個のブロックのうち、３個のブロック（Ａ、Ｂ、Ｊ）が正しい位置に復元されているので、Ｄｃ＝０．３０となる。また、１３個の境界数のうち、１個の境界（ＡとＢ）が正しく隣接しているので、Ｎｃは約０．０８となる。また、１０個のブロックのうち、２個のブロック（Ａ、Ｂ）が連結的に正しく復元されているので、Ｌｃ＝０．２０となる。
【０１０４】
図１５の例２の場合、１０個のブロックのうち、正しい位置に復元されているブロックがないので、Ｄｃ＝０となる。また、１３個の境界数のうち、２個の境界（ＡとＢ、及びＢとＧ）が正しく隣接しているので、Ｎｃは約０．１５となる。また、１０個のブロックのうち、３個のブロック（Ａ、Ｂ）が位置関係に関わらず連結的に正しく復元されているので、Ｌｃ＝０．３０となる。
【０１０５】
図１４において、比較例では、画素ブロックサイズは、１６×１６ピクセルであり、画素ブロック数は１４０である。この場合、Ｄｃ＝０．０５６、Ｎｃ＝０．１４３、Ｌｃ＝０．１８０であった。
【０１０６】
本実施の形態では、カラー画像に対してではなく、カラー画像に基づいて濃淡画像を生成し、生成した濃淡画像に対して知覚暗号化を行う。まず、画素ブロックサイズが、比較例と同様の１６×１６ピクセルであり、画素ブロック数が１４０である場合、すなわち、比較例に比べて、濃淡画像にすることにより、色情報を除外した場合、Ｄｃ＝０．０３０、Ｎｃ＝０．０８６、Ｌｃ＝０．１０４であった。Ｄｃ、Ｎｃ及びＬｃのいずれも、比較例の場合に比べて小さくなっており、元の画像の復元が困難になっており、セキュリティが向上していることが分かる。
【０１０７】
画素ブロックサイズが、８×８ピクセルであり、画素ブロック数が１６８０である場合、すなわち、比較例に比べて、濃淡画像にすることにより、色情報を除外し、ブロックサイズを小さくし、かつブロック数を多くした場合、Ｄｃ＝０．００６、Ｎｃ＝０．００５、Ｌｃ＝０．００３であった。Ｄｃ、Ｎｃ及びＬｃのいずれも、さらに小さくなっており、元の画像の復元が困難になっており、セキュリティが一層向上していることが分かる。
【０１０８】
図１６は本実施の形態の画像処理装置１００による知覚暗号化を行った場合のＪＰＥＧ符号化の圧縮特性の一例を示す説明図である。図１６において、縦軸はＰＳＮＲ（ピーク信号対雑音比）を示し、横軸はQuality factor（Ｑｆ：圧縮Ｑファクター）を示す。ＰＳＮＲが大きいほど画像の画質はよい（劣化が少ない）ことを表す。また、Ｑｆが大きいほど圧縮の度合が弱いことを表す。図中、符号Ａは本実施例（８×８ピクセルの画素ブロックで知覚暗号化）を示し、符号Ｂは比較例として、カラー画像に対して１６×１６ピクセルの画素ブロックで知覚暗号化した場合を示し、符号Ｃは比較例として知覚暗号化していない場合を示す。
【０１０９】
図１６に示すように、本実施の形態によれば、圧縮の度合（Ｑｆ）に関わらず、比較例に比べて、ＪＰＥＧ符号化された画像をＪＰＥＧ伸長して、知覚復号した場合、画像の画質が良いことが分かる。
【０１１０】
次に、伸長・復号動作について説明する。
【０１１１】
入力部１０は、例えば、外部のサーバ等から濃淡画像を符号化した符号化画像を取得する。符号化画像は、例えば、前述のＪＰＥＧ符号化によって圧縮された濃淡画像である。入力部１０は、取得した符号化画像を画像メモリ２０に記憶することができる。この場合、画像処理部３０は、画像メモリ２０から符号化画像を読み出すことができる。また、入力部１０は、取得した符号化画像を画像処理部３０へ出力することもできる。
【０１１２】
伸長処理部３５は、取得した符号化画像を伸長する。伸長処理は、前述の圧縮処理に対応する処理である。伸長処理によって、圧縮されていない濃淡画像に変換することができる。
【０１１３】
画素ブロック分割部３２は、伸長して得られた濃淡画像を８画素×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する。画素ブロックサイズは、暗号化（知覚暗号化）されたときの画素ブロックサイズと同じサイズである。
【０１１４】
復号処理部３６は、画素ブロック分割部３２に対応する復号処理を行う。復号処理部３６は、画素ブロック分割部３２によって分割された画素ブロックの単位（画素ブロック単位）の画像変換によって濃淡画像を復号する。より具体的には、画素ブロック単位の画像変換によって濃淡画像を知覚復号する。この場合、知覚暗号化の際に用いられた秘密鍵を使用して復号する。これにより、知覚暗号化前の濃淡画像を得ることができる。
【０１１５】
カラー画像生成部３７は、復号された濃淡画像の各画素の画素値を複数の色成分のいずれかに変換してカラー画像を生成する。例えば、Ｒチャネルに対応するＭ×Ｎピクセルの濃淡画像の輝度値をＭ×Ｎピクセルのカラー画像のＲ値に変換し、Ｇチャネルに対応するＭ×Ｎピクセルの濃淡画像の輝度値を当該カラー画像のＧ値に変換し、Ｂチャネルに対応するＭ×Ｎピクセルの濃淡画像の輝度値を当該カラー画像のＢ値に変換することができる。これにより、暗号化及び圧縮される前の元のカラー画像を生成することができる。
【０１１６】
出力部４０は、カラー画像生成部３７で生成したカラー画像を出力することができる。
【０１１７】
図１７は本実施の形態の画像処理装置１００による知覚暗号化及び圧縮の処理手順の一例を示すフローチャートである。以下では便宜上、処理の主体を画像処理部３０として説明する。画像処理部３０は、カラー画像を取得し（Ｓ１１）、取得したカラー画像がビットマップ形式（ＢＭＰフォーマット）であるか否かを判定する（Ｓ１２）。ビットマップ形式でない場合（Ｓ１２でＮＯ）、画像処理部３０は、ビットマップ形式に変換し（Ｓ１３）、後述のステップＳ１４の処理を行う。
【０１１８】
ビットマップ形式である場合（Ｓ１２でＹＥＳ）、画像処理部３０は、カラー画像のＲ、Ｇ、Ｂの各値を輝度値Ｙに変換してカラーチャネル毎の濃淡画像を生成する（Ｓ１４）。画像処理部３０は、生成した濃淡画像を、８×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する（Ｓ１５）。
【０１１９】
画像処理部３０は、分割した画素ブロック単位で濃淡画像を知覚暗号化し（Ｓ１６）、圧縮処理を行うか否かを判定する（Ｓ１７）。圧縮処理を行う場合（Ｓ１７でＹＥＳ）、画像処理部３０は、濃淡画像を圧縮して圧縮画像を生成し（Ｓ１８）、生成した圧縮画像を出力し（Ｓ１９）、処理を終了する。
【０１２０】
圧縮処理を行わない場合（Ｓ１７でＮＯ）、画像処理部３０は、知覚暗号化した濃淡画像を出力し（Ｓ２０）、処理を終了する。
【０１２１】
図１８は本実施の形態の画像処理装置１００による伸長及び知覚復号の処理手順の一例を示すフローチャートである。画像処理部３０は、圧縮された濃淡画像を取得し（Ｓ３１）、取得した濃淡画像に対して伸長処理を行う（Ｓ３２）。画像処理部３０は、伸長した濃淡画像を、８×８画素で構成されるブロックサイズの整数倍の画素ブロックに分割する（Ｓ３３）。
【０１２２】
画像処理部３０は、分割した画素ブロック単位で濃淡画像を知覚復号する（Ｓ３４）。画像処理部３０は、Ｒチャネルに対応する濃淡画像の輝度値をカラー画像のＲ値に変換し、Ｇチャネルに対応する濃淡画像の輝度値を当該カラー画像のＧ値に変換し、Ｂチャネルに対応する濃淡画像の輝度値を当該カラー画像のＢ値に変換し、復号された濃淡画像をカラーチャネル単位で結合してカラー画像を生成し（Ｓ３５）、生成したカラー画像を出力し（Ｓ３６）、処理を終了する。
【０１２３】
図１の構成では、画像処理部３０が、濃淡画像生成部３１、画素ブロック分割部３２、暗号化処理部３３、圧縮処理部３４、伸長処理部３５、復号処理部３６、カラー画像生成部３７、及び画像変換部３８を備える構成であるが、これに限定されない。例えば、画像処理部３０が、濃淡画像生成部３１、画素ブロック分割部３２、暗号化処理部３３、圧縮処理部３４、及び画像変換部３８だけを備える構成でもよく、あるいは画像処理部３０が、画素ブロック分割部３２、伸長処理部３５、復号処理部３６及びカラー画像生成部３７だけを備える構成でもよい。
【０１２４】
画像処理部３０は、ＣＰＵ（プロセッサ）、ＲＡＭ（メモリ）などを備えた汎用コンピュータを用いて実現することもできる。すなわち、図１７及び図１８に示すような、各処理の手順を定めたコンピュータプログラムをコンピュータに備えられたＲＡＭ（メモリ）にロードし、コンピュータプログラムをＣＰＵ（プロセッサ）で実行することにより、コンピュータ上で画像処理装置１００を実現することができる。
【０１２５】
図１９は本実施の形態の画像処理装置１００を用いたＥＴＣシステムの構成の第１例を示す模式図である。ＥｔＣ（Encryption then Compression）システムは、送信側の画像処理装置１００、受信側の画像処理装置１００、及びクラウドサービスを行うサーバ２００などを備える。クラウドサービスは、例えば、インターネットなどの通信路を介して膨大な量の画像（静止画や動画）をアップロード及びダウンロードすることができるサービスであればよい。サーバ２００には、例えば、ＪＰＥＧ符号化などの圧縮処理機能２０１、静止画像や動画を記録するＤＢ２０２などを備える。
【０１２６】
送信側の画像処理装置１００は、原画像（カラー画像）を濃淡画像に変換し、変換した濃淡画像に対して所定の秘密鍵を用いて知覚暗号化を行い、暗号化された濃淡画像をサーバ２００へアップロードする。
【０１２７】
サーバ２００では、受信した濃淡画像を、クラウドサービスによって定められた圧縮率で圧縮し、圧縮した濃淡画像をＤＢ２０２に記録する。この場合、サーバ２００で受信した濃淡画像は、８×８ピクセルの整数倍のサイズの画素ブロック単位で知覚暗号化されているので、サーバ２００でどのような圧縮率で圧縮処理を行っても、知覚暗号化された状態は保持されたままとなる。
【０１２８】
受信側の画像処理装置１００は、圧縮された濃淡画像をダウンロードし、伸長処理を行うことによって、暗号化された濃淡画像に変換する。さらに、所定の秘密鍵を用いて知覚復号を行い、復号された、カラーチャネル単位の濃淡画像を結合してカラー画像を得ることができる。
【０１２９】
送信側の画像処理装置１００とサーバ２００との間の通信路、及びサーバ２００と受信側の画像処理装置１００との間の通信路においては、カラー画像は濃淡画像に変換され、色情報を除外するとともに、例えば、８×８ピクセルの小さいブロックサイズ及びブロック数が多い状態で知覚暗号化された状態になっているので、不正な復号に対してセキュリティを高めることができる。また、前述の比較例よりも、復元されたカラー画像の画質の劣化を抑制することができる。
【０１３０】
図２０は本実施の形態の画像処理装置１００を用いたＥｔＣシステムの構成の第２例を示す模式図である。第２例では、サーバ２００には、ＪＰＥＧ符号化などの圧縮処理機能２０４、静止画像や動画を記録するＤＢ２０２などに加えて、伸長処理機能２０３を備える。
【０１３１】
送信側の画像処理装置１００は、原画像（カラー画像）を濃淡画像に変換し、変換した濃淡画像に対して所定の秘密鍵を用いて知覚暗号化を行い、さらに圧縮した濃淡画像（圧縮画像Ｃ１）をサーバ２００へアップロードする。
【０１３２】
サーバ２００では、圧縮画像Ｃ１を一旦伸長処理し、再度、クラウドサービスによって定められた圧縮率で圧縮し、圧縮した濃淡画像をＤＢ２０２に記録する。サーバ２００で行う再圧縮は、送信側で行う圧縮よりも圧縮度合を強くしてもよい。この場合、サーバ２００で受信した濃淡画像は、８×８ピクセルの整数倍のサイズの画素ブロック単位で知覚暗号化されているので、サーバ２００でどのような圧縮率で圧縮処理を行っても、知覚暗号化された状態は保持されたままとなる。
【０１３３】
受信側の画像処理装置１００は、圧縮された濃淡画像（圧縮画像Ｃ２）をダウンロードし、伸長処理を行うことによって、暗号化された濃淡画像に変換する。さらに、所定の秘密鍵を用いて知覚復号を行い、復号された、カラーチャネル単位の濃淡画像を結合してカラー画像を得ることができる。
【０１３４】
送信側の画像処理装置１００とサーバ２００との間の通信路、及びサーバ２００と受信側の画像処理装置１００との間の通信路においては、カラー画像は濃淡画像に変換され、色情報を除外するとともに、例えば、８×８ピクセルの小さいブロックサイズ及びブロック数が多い状態で知覚暗号化された状態になっているので、不正な復号に対してセキュリティを高めることができる。また、前述の比較例よりも、復元されたカラー画像の画質の劣化を抑制することができる。
【０１３５】
上述の実施の形態では、圧縮・伸長の例として、ＪＰＥＧ形式を例に挙げて説明したが、ＪＰＥＧ形式に限定されるものではない。本実施の形態は、例えば、ＰＮＧ（Portable Network Graphics）形式、ＧＩＦ（Graphics Interchange Format）などの形式にも適用することができる。
【０１３６】
以上に開示された実施の形態及び実施例は、全ての点で例示であって制限的なものではないと考慮されるべきである。本開示の範囲は、以上の実施の形態及び実施例ではなく、請求の範囲によって示され、請求の範囲と均等の意味及び範囲内での全ての修正や変形を含むものと意図される。
【符号の説明】
【０１３７】
１０  入力部
２０  画像メモリ
３０  画像処理部
３１  濃淡画像生成部
３２  画素ブロック分割部
３３  暗号化処理部
３４  圧縮処理部
３５  伸長処理部
３６  復号処理部
３７  カラー画像生成部
３８  画像変換部
４０  出力部
５０  記憶部
１００  画像処理装置
２００  サーバ
２０１、２０４  圧縮処理機能
２０２  ＤＢ
２０３  伸長処理機能
Ｋ１、Ｋ２、Ｋ３  秘密鍵
【図１】
2019187609.tif 000003
【図２】
2019187609.tif 000004
【図３】
2019187609.tif 000005
【図４】
2019187609.tif 000006
【図５】
2019187609.tif 000007
【図６】
2019187609.tif 000008
【図７】
2019187609.tif 000009
【図８】
2019187609.tif 000010
【図９】
2019187609.tif 000011
【図１０】
2019187609.tif 000012
【図１１】
2019187609.tif 000013
【図１２】
2019187609.tif 000014
【図１３】
2019187609.tif 000015
【図１４】
2019187609.tif 000016
【図１５】
2019187609.tif 000017
【図１６】
2019187609.tif 000018
【図１７】
2019187609.tif 000019
【図１８】
2019187609.tif 000020
【図１９】
2019187609.tif 000021
【図２０】
2019187609.tif 000022
【国際調査報告】
2019187609.tif 000023
2019187609.tif 000024
2019187609.tif 000025
2019187609.tif 000026