(57)【要約】【課題】  符号データを復号することなく、特定の周波数成分の符号データ位置を知ることができる符号化装置等を提供する。【解決手段】  原信号をＤＣＴ変換器２００で周波数成分に変換し、この変換した結果の係数を可変長符号化し、この符号化したデータをメモリへ出力するＪＰＥＧエンコーダ１０２であって、前記周波数成分のうち特定の周波数成分を指定するための設定を行う設定手段と、指定された周波数成分の前記係数を符号化した結果を出力するハフマン符号化器２０２と、このハフマン符号化器２０２が出力する結果のアドレスとビット位置を出力する出力位置判定器２０３とを備える。【選択図】  図３
2006254333.tif 000002
【特許請求の範囲】
【請求項１】
原信号を周波数成分に変換し、この変換した結果の係数を可変長符号化し、この符号化したデータをメモリへ出力する符号化装置であって、
前記周波数成分のうち特定の周波数成分を指定するための設定を行う設定手段と、
指定された周波数成分の前記係数を符号化した結果を出力する符号化出力手段と、
この符号化出力手段が出力する結果のアドレスとビット位置を出力する位置出力手段とを備えることを特徴とする符号化装置。
【請求項２】
請求項１の符号化装置において、
前記結果の符号データ情報を併せて出力することを特徴とする符号化装置。
【請求項３】
請求項１または請求項２の符号化装置において、
前記周波数成分を特定する設定は、符号化単位内での係数の位置（順番）を設定することを特徴とする符号化装置。
【請求項４】
請求項１または請求項２の符号化装置において、
前記周波数成分を特定する設定は、前記係数の順番をカウントする係数値のスレッショルド値と、符号化単位内で周波数の高い方からの係数の位置（順番）を設定することを特徴とする符号化装置。
【請求項５】
原信号を周波数成分に変換し、この変換した結果の係数を可変長符号化し、符号化したデータをメモリへ出力する符号化方法において、
特定の周波数成分を指定するための設定を行い、
指定された周波数成分の係数を符号化した結果を出力し、
この出力された結果のアドレスとビット位置を出力することを特徴とする符号化方法。
【請求項６】
請求項５の符号化方法において、
前記結果の符号データ情報を併せて出力することを特徴とする符号化方法。
【請求項７】
請求項５または請求項６の符号化方法において、
前記周波数成分を特定する設定は、符号化単位内での係数の位置（順番）を設定することを特徴とする符号化方法。
【請求項８】
請求項５または請求項６の符号化方法において、
前記周波数成分を特定する設定は、順番をカウントする係数値のスレッショルド値と、符号化単位内で周波数の高い方からの係数の位置（順番）を設定することを特徴とする符号化方法。
【請求項９】
請求項１ないし請求項４のいずれかの１つの符号化装置または請求項５ないし請求項８のいずれか１つの符号化方法を用いたことを特徴とするデジタルカメラ。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、符号化装置と符号化方法とこの符号化方法を行う符号化装置を搭載したデジタルカメラとに関する。
【背景技術】
【０００２】
従来から、電子透かしを埋め込む方法には様々な方式が提案、実用化されているが、ＪＰＥＧなどの圧縮処理を行う場合、その圧縮過程で透かし情報が損なわれてしまうため、量子化後のデータに透かしを埋め込み、その後、可変長符号化を行う方法が一般的である。
【０００３】
一方、ＪＰＥＧなどの符号化を用いるデジタルカメラに代表される装置が実用化されており、これらの装置では高速に処理するためにハードウェアで画像を符号化している。
【０００４】
これらの装置で電子透かしを埋め込むためには、（１）透かし処理をハードウェア化して組み込む。（２）ハードウェアの処理を分割して量子化後のデータを一旦出力し、透かし処理を施した後に可変長符号化を行う。（３）符号化されたデータを復号化し、透かし処理を施した後に再度可変長符号化を行う（特許文献１参照）等の方法が考えられる。
【特許文献１】特開２０００−１５１４１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、（１）については、電子透かし技術は、処理方式が攻撃者に知られてしまうと透かし情報が除去されたり改竄されたりする可能性が高く、そのため、その処理は柔軟に変更できる構成が望ましい。（２）については、符号化前のデータはデータ量が多く、必要となるメモリが増大してしまいコストアップを招く。（３）については、ソフトウェアですべてのデータの復号化を行うため、実用的な処理速度は期待できない等の問題がある。
【０００６】
この発明は、上記問題点に鑑みなされたもので、上記不具合を解決することを目的としている。
【課題を解決するための手段】
【０００７】
請求項１の発明は、原信号を周波数成分に変換し、この変換した結果の係数を可変長符号化し、この符号化したデータをメモリへ出力する符号化装置であって、
前記周波数成分のうち特定の周波数成分を指定するための設定を行う設定手段と、
指定された周波数成分の前記係数を符号化した結果を出力する符号化出力手段と、
この符号化出力手段が出力する結果のアドレスとビット位置を出力する位置出力手段とを備えることを特徴とする。
【０００８】
請求項２の発明は、請求項１の符号化装置において、
前記結果の符号データ情報を併せて出力することを特徴とする。
【０００９】
請求項３の発明は、請求項１または請求項２の符号化装置において、
前記周波数成分を特定する設定は、符号化単位内での係数の位置を設定することを特徴とする。
【００１０】
請求項４の発明は、請求項１または請求項２の符号化装置において、
前記周波数成分を特定する設定は、前記係数の順番をカウントする係数値のスレッショルド値と、符号化単位内で周波数の高い方からの係数の位置（順番）を設定することを特徴とする。
【００１１】
請求項５の発明は、原信号を周波数成分に変換し、この変換した結果の係数を可変長符号化し、符号化したデータをメモリへ出力する符号化方法において、
特定の周波数成分を指定するための設定を行い、
指定された周波数成分の係数を符号化した結果を出力し、
この出力された結果のアドレスとビット位置を出力することを特徴とする。
【００１２】
請求項６の発明は、請求項５の符号化方法において、
前記結果の符号データ情報を併せて出力することを特徴とする。
【００１３】
請求項７の発明は、請求項５または請求項６の符号化方法において、
前記周波数成分を特定する設定は、符号化単位内での係数の位置を設定することを特徴とする。
【００１４】
請求項８の発明は、請求項５または請求項６の符号化方法において、
前記周波数成分を特定する設定は、順番をカウントする係数値のスレッショルド値と、符号化単位内で周波数の高い方からの係数の位置を設定することを特徴とする。
【００１５】
請求項９の発明は、請求項１ないし請求項４のいずれかの１つの符号化装置または請求項５ないし請求項８のいずれか１つの符号化方法を用いたことを特徴とする。
【発明の効果】
【００１６】
請求項１ないし請求項３と請求項５ないし請求項７の発明によれば、符号データを復号することなく、特定の周波数成分の符号データ位置を知ることができるため、電子透かしなどの符号データの操作を柔軟かつ高速に行うことができる。
【００１７】
請求項４または請求項８の発明によれば、符号データを複合することなく、設定したスレッショルドより大きな係数値の高周波成分の符号データ位置を知ることができ、このため電子透かしの符号データの操作を柔軟かつ高速に行うことができる。
【００１８】
請求項９の発明によれば、符号データを復号することなく、電子透かしなどの符号データの操作を柔軟かつ高速に行うことができるので、記録時間や連写性能を大きく損なうことなく、電子透かし機能を実装することができる。
【発明を実施するための最良の形態】
【００１９】
以下、この発明に係る符号化方法を実施する符号化装置を搭載したデジタルカメラの実施の形態である実施例を図面に基づいて説明する。
【実施例】
【００２０】
以下に本発明の実施例について、デジタルスチルカメラを例に、係数の位置を指定する場合（実施例１）及び、スレッショルド値と周波数の高い方からの係数の位置を指定する場合（実施例２）を説明する。
【００２１】
図１において、０１はデジタルスチルカメラ装置であり、このデジタルスチルカメラ装置０１は、全体を制御するための図示しないＣＰＵ,フラッシュメモリ,ＳＤＲＡＭ,タイマ−等からなるシステム制御部（設定手段）０２と、撮像のための図示しない光学系部品（レンズ及びレンズ駆動モータ）,ＣＣＤ,ＣＣＤ駆動回路,Ａ／Ｄ変換器等からなる撮像部０３と、撮像部０３で得られた画像信号に種々の画像処理を施すと共に撮像部０３のＣＣＤ駆動タイミングやレンズ駆動モータ（図示せず）を制御してズーミング,フォーカシングや露出調整等を行い、また画像のＪＰＥＧ圧縮およびＪＰＥＧ伸長を行うために設けられた画像処理用ＬＳＩやメモリ等からなる画像処理部０４と、画像処理部で処理された画像信号をＬＣＤ０６へ表示するための信号処理を行い、またユーザーインターフェイスのための種々のグラフィック画像を生成し後述するＬＣＤ０６へ表示するために設けられたＤ／Ａ変換器（図示せず）や図示しないオンスクリーンディスプレイコントローラ等からなる表示制御部０５と、画像を表示したり、ユーザーインターフェイスのためのグラフィックを表示したりするために設けられたＬＣＤ０６と、後述する記録メディア０８とのインターフェイスのために設けられたメモリカードコントローラ１０４（図２参照）等からなる記録メディアインターフェイス部０７と、図示しないキー,ダイアル等のユーザーインターフェイスの状態の検出を行うとともにメインＣＰＵ（図示せず）への主電源制御を行うために設けられたサブＣＰＵ（図示せず）等からなるハードキーインターフェイス部０９と、各種通信モジュールを接続してデータ通信を行うために設けられた通信カードコントローラ（図示せず）等からなる通信インターフェイス部１０とを備えている。
【００２２】
また、図１において、０８は圧縮された画像信号や画像に纏わる種々の情報を記憶するために設けられたフラッシュメモリ等からなるとともにデジタルスチルカメラ装置０１に着脱可能に装着された記録メディア、１１はデジタルスチルカメラ装置０１をＵＳＢで接続し、デジタルスチルカメラ装置０１からの画像を転送して再生する画像再生装置である。
【００２３】
画像処理部０４は、図２に示すように、システム制御部０２の指示により撮像部０３へ前述した各種駆動信号を送出する撮像制御部１００と、撮像部０３からの画像信号を受け取りシステム制御部０２からの設定に基づいて色空間変換,ガンマ補正,ホワイトバランス調整などの処理を行う画像変換部１０１と、ＪＰＥＧ圧縮処理を行うＪＰＥＧエンコーダ（符号化装置）１０２と、ＪＰＥＧ伸長処理を行うＪＰＥＧデコーダ１０３と、各モジュール（図示せず）からのアクセスを調停しながら後述するメモリ１０５へのアクセスを行うメモリコントローラ１０４とを備えている。１０５は画像データ,符号データ等を蓄積するメモリである。
【００２４】
ＪＰＥＧエンコーダ１０２は、図３に示すように、８×８画素の各ブロック毎にＤＣＴ変換（周波数成分に変換）を行うＤＣＴ変換器２００と、ＤＣＴ変換後の係数をシステム制御部０２によって設定された量子化テーブルに基づいて量子化する量子化器２０１と、量子化された係数をシステム制御部０２によって設定されたハフマンテーブルに基づいてハフマン符号化（可変長符号化）するハフマン符号化器（符号化出力手段）２０２と、出力位置データを出力する出力位置判定器（位置出力手段）２０３とを備えている。
【００２５】
ＤＣＴ変換器２００が各ブロック毎のＤＣＴ変換を行う際のブロック毎の画像データのメモリ１０５からの読み出しは、システム制御部０２によって設定された画像データの配置情報（各色成分（Ｙ，Ｕ，Ｖ）の先頭アドレス、水平サイズ、垂直サイズ）に基づいてメモリコントローラ１０５により行われる。
【００２６】
また、ハフマン符号化器２０２によって符号化されたデータのメモリ１０５への書き出しは、システム制御部０２によって設定された先頭アドレスに基づいてメモリコントローラ１０４によりバイト単位で行われる。
【００２７】
ハフマン符号化器２０２は、各係数の符号化毎にその係数位置,係数値,係数の属するグループ番号あるいは無効係数のラン長（ゼロラン値）及び符号化結果のビット数を出力位置判定器２０３へ出力する。すなわち、ハフマン符号化器２０２は符号化データを出力する。符号化データは、上記の係数位置,係数値,グループ番号あるいは無効係数のラン長および符号化結果のビット数等のデータである。
【００２８】
また、ハフマン符号化器２０２は、図４に示すように各係数をジグザグスキャン順に符号化していく。図４において、各点が係数位置を示す。
【００２９】
出力位置判定器２０３は、システム制御部０２によって設定された符号化データの書き出し先頭アドレスとシステム制御部０２からの係数判定情報とに基づいてハフマン符号化器２０２からのデータを解析し、図５に示すような出力位置データを出力する。出力位置データのメモリ１０５への書き出しは、システム制御部０２によって設定された先頭アドレスに基づいて、メモリコントローラ１０４により行われる。
［動  作］
まず、最初にデジタルスチルカメラ装置０１の撮影動作について簡単に説明する。
【００３０】
利用者は撮影に先立ち、図示されていない種々のキー、ダイヤルを操作し、撮影動作モード（連写撮影モード、通常撮影モード等）を決定する。利用者の操作内容はハードキーインターフェイス部０９を通じてシステム制御部０２で判別される。
【００３１】
システム制御部０２は、操作に応じてガイダンスグラフィックを生成して表示制御部０５に表示させて利用者に次操作を促す。
【００３２】
また、システム制御部０２は、撮影動作モードが決定されると、モードに応じた処理パラメタを画像処理部０４へ設定する。
【００３３】
撮影の準備が整った後、システム制御部０２は撮像部０３及び画像処理部０４を起動し、撮像部０３は画像処理部０４からの制御に従い、実際の撮影に先だってモニタリング画像を表示するための撮像動作を開始する。
【００３４】
撮像されたデータは連続的に画像処理部０４へ送られ、画像処理部０４では色空間変換、ガンマ補正、ホワイトバランス調整などの処理を施した後、画像データを表示制御部０５へ送る。また、この時同時に画像処理部０４では、露出の検出を行い、撮像部０３を制御して調整を行う。
【００３５】
表示制御部０５では、画像データを信号処理してＬＣＤ０６へ表示し、利用者へ撮像状態を提示する。
【００３６】
図示されていないレリーズボタンの半押し状態が検出されると、その操作はモード設定と同様にしてハードキーインターフェイス部０９を通じてシステム制御部０２で判別される。
【００３７】
システム制御部０２は、画像処理部０４を制御し、画像処理部０４はモニタリング画像からオートフォーカス（ＡＦ）制御のための評価値を抽出し、所定のアルゴリズムに従って撮像部０３を制御してフォーカス調整を行う。
【００３８】
図示されていないズームボタンが押されると、その操作は同様にしてハードキーインターフェイス部０９を通じてシステム制御部０２で判別される。
【００３９】
システム制御部０２は、撮像部０３を制御して入力された方向へのズーム動作を行なわせる。
【００４０】
図示されていないレリーズボタンが押されると、その操作は同様にしてハードキーインターフェイス部０９を通じてシステム制御部０２で判別される。
【００４１】
システム制御部０２は、設定されている撮影動作モードに従い画像処理部０４を制御して撮影動作を開始する。
【００４２】
撮像部０３は画像処理部０４からの制御に従い、所定の画像を取り込み画像処理部０４へ送る。画像処理部０４は、撮影動作モードに応じた画像処理、圧縮処理を行う。またこのとき、画像データから縮小画像データを生成、圧縮してサムネイルデータも作成する。
【００４３】
通常の撮影動作モードの場合には、１フレーム分の画像の取り込みと処理で終了する。
【００４４】
連写モードの場合には、レリーズボタンの解除が検出されるまで、所定のフレームレートで画像の取り込みと処理を繰り返し行う。
【００４５】
システム制御部０２は、圧縮された画像データ及びサムネイルデータを読み出し、さらにヘッダー情報を付加した後、記録メディアインターフェイス部０７を通じて記録メディア０８へ書き込む。
【００４６】
ここで、ヘッダー情報には、選択された撮影動作モードの情報や撮影日時の情報等が含まれている。以上で一連の撮影動作を完了する。
［第１実施例の動作］
次に、第１実施例（係数の位置を指定する場合）の出力位置判定器２０３の動作について図６のフロー図に基づいて説明する。
【００４７】
図６において、ｋｎはシステム制御部０２から設定された係数位置（１〜６４、図４のＤＣが１、ＡＣ７７が６４に相当する）、ｂｃは出力位置判定器２０３内部で保持しているビットカウンタ、ｋｐはハフマン符号化器２０２から通知される係数位置（１〜６４、図４のＤＣが１、ＡＣ７７が６４に相当する）、ｋはハフマン符号化器２０２から通知される係数値、ｓｓはハフマン符号化器２０２から通知されるグループ番号あるいはゼロラン値、ｎはハフマン符号化器２０２から通知されるビット数である。
【００４８】
ＪＰＥＧエンコーダ１０２が起動されると（ＳＴＡＲＴ）、設定された係数位置ｋｎを判定し（Ｓ３００）、係数位置Ｋｎが０の場合には出力位置判定器２０３は動作しない（装置として従来の動作）。
【００４９】
係数位置Ｋｎが０より大きい場合、ビットカウンタｂｃをクリアして（Ｓ３０１）、出力位置判定器２０３は動作を開始する。
【００５０】
ハフマン符号化器２０２から係数位置ｋｐ、係数値ｋ、グループ番号ｓｓ、ビット数ｎが通知されると（Ｓ３０２）、設定された係数位置ｋｎとハフマン符号化器２０２からの係数位置ｋｐとを比較し（Ｓ３０３）、一致した場合には図５に示すように出力位置データを作成して出力する（Ｓ３０４）。グループ番号ｓｓには、係数値が０（無効係数）の場合にはその符号化前までのラン長が通知される。
【００５１】
ビットカウンタｂｃの値は出力アドレスとビット位置の双方（ｂ２６〜ｂ０）に相当する。
【００５２】
グループ番号は、図５に示すように、係数値ｋが非ゼロの場合には、ｂ３１に１を、ｂ３０〜ｂ２７には通知されたグループ番号から１を減じた値を入れる。
【００５３】
ビットカウンタｂｃに、通知されたビット数ｎを加算し（Ｓ３０５）、上記の処理を符号化完了まで繰り返す（Ｓ３０６）。なお、図５に示す出力アドレスとは、メモリ１０５上の符号データの配置されるアドレス（先頭からの相対アドレス）であり、出力ビット位置とはそのアドレスのデータ（１バイト）のＭＳＢからの位置（０：ＭＳＢ、７：ＬＳＢ）である。
【００５４】
このように、ハフマン符号化器２０２が出力する係数位置ｋｐが設定された係数位置（特定の周波数成分）ｋｎになると、このときのハフマン符号化器２０２が出力する符号データ（特定の周波数成分の係数を符号化したもの）に基づいて、出力位置判定器２０３がその係数位置ｋｐのアドレスとビット位置を出力するものであるから、ハフマン符号化器２０２が出力する符号データの位置を知ることができる。すなわち、符号データを復号することなく、特定の周波数成分の符号データ位置を知ることができる。このため、電子透かしなどの符号データの操作を柔軟かつ高速に行うことができる。
［第２実施例の動作］
次に、第２実施例（スレッショルド値と周波数の高い方からの係数の位置を指定する場合）の出力位置判定器２０３の動作について、図７に示すフロー図に基づいて説明する。
【００５５】
図７において、ｋｂｎはシステム制御部０２から設定された周波数の高い方からの係数位置（１〜６４）、ｋｔはシステム制御部０２から設定された係数のスレッショルド値、ｂｃは出力位置判定器２０３内部で保持しているビットカウンタ、ｋｐはハフマン符号化器２０２から通知される係数位置（１〜６４、図４のＤＣが１、ＡＣ７７が６４に相当する）、ｋはハフマン符号化器２０２から通知される係数値、ｓｓはハフマン符号化器２０２から通知されるグループ番号、ｎはハフマン符号化器２０２から通知されるビット数、ｔｂｌは出力位置判定器２０３内部で保持しているグループ番号ｓｓとビットカウンタｂｃを一時保存するためのバッファ（６４のエントリを持つ）、ｅｎは出力位置判定器２０３内部で保持しているバッファｔｂｌのエントリポインタである。
【００５６】
ＪＰＥＧエンコーダ１０２が起動されると（ＳＴＡＲＴ）、設定された係数位置ｋｂｎを判定し（Ｓ４００）、係数位置ｋｂｎが０の場合には出力位置判定器２０３は動作しない（装置として従来の動作）。
【００５７】
係数位置ｋｂｎが０より大きい場合、ビットカウンタｂｃとエントリポインタｅｎをクリア（Ｓ４０１）して動作を開始する。
【００５８】
ハフマン符号化器２０２から係数位置ｋｐ、係数値ｋ、グループ番号ｓｓ、ビット数ｎが通知されると（Ｓ４０２）、係数値ｋの絶対値とスレッショルド値ｋｔを比較し（Ｓ４０３）、一致した場合には、バッファｔｂｌにグループ番号ｓｓとビットカウンタｂｃをコピーし、エントリポインタｅｎを１つ進める（Ｓ４０４）。
【００５９】
係数位置ｋｐはブロックの終端（６４：係数位置）の場合には（Ｓ４０５）、有効な出力位置データがあるか否かを判定し（Ｓ４０６）、有効であればバッファｔｂｌから取り出し、図５に示した出力位置データを作成して出力する（Ｓ４０７）。
【００６０】
エントリポインタｅｎはブロック毎にクリアする（Ｓ４０８）。
【００６１】
ビットカウンタｂｃに、通知されたビット数ｎを加算し（Ｓ４０９）、上記の処理を符号化完了まで繰り返す（Ｓ４１０））。
【００６２】
以上の様にして作成された出力位置データは、出力された符号データに対して電子透かしの処理を行う際にシステム制御部０２が参照し、そのアドレスとビット位置から始まる符号データを所定のアルゴリズムに従い符号データの置き換えを行う。
【００６３】
グループ番号は、係数値の絶対値の大きさと符号の長さの判定に用いることができる。
【００６４】
特に実施例１においては、指定した位置の係数が無効係数であった場合に、ランレングス符号化されている符号データを分断して透かしデータを埋め込むことが容易にできる。
【００６５】
本実施例においては、色成分に関わらずすべてのブロックに対して出力位置を判定、出力する例を示したが、必要とする（電子透かしなどの）処理に応じて色成分毎の判定を加えても良い。
【００６６】
本実施例においては、デジタルカメラを例に、カラー静止画像の圧縮に最も一般的に用いられているＪＰＥＧ圧縮の例について示したが、動画像・あるいは音声などへ電子透かしを埋め込む装置にいおいても適用することができる
【図面の簡単な説明】
【００６７】
【図１】この発明に係るデジタルスチルカメラの構成を示したブロック図である。
【図２】画像処理部の構成を示したブロック図である。
【図３】ＪＰＥＧエンコーダの構成を示したブロック図である。
【図４】ジグザグスキャンを示した説明図である。
【図５】出力位置データの構成を示した説明図である。
【図６】第１実施例のデジタルスチルカメラの動作を示したフロー図である。
【図７】第２実施例のデジタルスチルカメラの動作を示したフロー図である。
【符号の説明】
【００６８】
１０２          ＪＰＥＧエンコーダ
２００          ＤＣＴ変換器
２０２          ハフマン符号化器
２０３          出力位置判定器
【図１】
2006254333.tif 000003
【図２】
2006254333.tif 000004
【図３】
2006254333.tif 000005
【図４】
2006254333.tif 000006
【図５】
2006254333.tif 000007
【図６】
2006254333.tif 000008
【図７】
2006254333.tif 000009