JP2019004439A - 符号化装置、撮像装置および符号化方法 - Google Patents

符号化装置、撮像装置および符号化方法 Download PDF

Info

Publication number
JP2019004439A
JP2019004439A JP2017120289A JP2017120289A JP2019004439A JP 2019004439 A JP2019004439 A JP 2019004439A JP 2017120289 A JP2017120289 A JP 2017120289A JP 2017120289 A JP2017120289 A JP 2017120289A JP 2019004439 A JP2019004439 A JP 2019004439A
Authority
JP
Japan
Prior art keywords
encoding
frame
unit
image
moving image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017120289A
Other languages
English (en)
Inventor
竹田 英史
Hidefumi Takeda
英史 竹田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2017120289A priority Critical patent/JP2019004439A/ja
Publication of JP2019004439A publication Critical patent/JP2019004439A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Studio Devices (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】回路規模の増大を招くことなく、動画記録中に静止画の同時記録を可能とする。【解決手段】符号化装置は、フレーム期間毎に入力される動画フレームに対して、所定数のフレーム期間内で所定数の動画フレームの圧縮符号化を実行する第1の符号化処理を実行するとともに、複数の前記フレーム期間にわたって1つの静止画フレームの圧縮符号化を実行する第2の符号化処理を実行する符号化手段と、所定数のフレーム期間内において、第1の符号化処理が完了した後に第2の符号化処理の一部を実行させるスケジューリング手段とを備える。【選択図】図2

Description

本発明は符号化装置、撮像装置および符号化方法に関し、特に動画と静止画の符号化を同時に行う符号化技術に関する。
従来、デジタルカメラ、ビデオカメラなどの撮像装置において、動画の撮影記録中にレリーズボタンの押下、タッチパネル操作などをユーザが行うことで、静止画を同時記録する機能を備えたものが開発されている。
また近年では、さらなる高画質化のために、1画素あたり8ビットを超える情報量を持つ高ダイナミックレンジな画像フォーマットへの要求が高まっている。このため、従来のJPEG(Joint Photographic Experts Group)方式に変わる新しい静止画符号化方式について様々な方式が検討されている。
動画記録中の静止画同時記録に関して、特許文献1には、動画撮影時には動画データをテープに記録し、ユーザによるレリーズ操作の検出時に静止画データをメモリに記録する構成が開示されている。
特開平11−187350号公報
しかしながら、特許文献1の構成では、動画と静止画用に2つのコーデックを備える必要があり、回路規模の増大を招くといった問題がある。特許文献1において、動画静止画両対応のコーデック構成にした場合、動画記録中に静止画の同時記録を行うことが困難となる。
本発明は、上述の問題点に鑑みてなされたものであって、回路規模の増大を招くことなく、動画記録中に静止画の同時記録を可能とする符号化装置、撮像装置および符号化方法を提供することを目的とする。
本発明の一実施形態に係る符号化装置は、フレーム期間毎に入力される動画フレームに対して、所定数の前記フレーム期間内で前記所定数の前記動画フレームの圧縮符号化を実行する第1の符号化処理を実行するとともに、複数の前記フレーム期間にわたって1つの静止画フレームの圧縮符号化を実行する第2の符号化処理を実行する符号化手段と、前記所定数のフレーム期間内において、前記第1の符号化処理が完了した後に前記第2の符号化処理の一部を実行させるスケジューリング手段とを備えることを特徴とする。
本発明の一実施形態に係る符号化方法は、フレーム期間毎に入力される動画フレームに対して、所定数の前記フレーム期間内で前記所定数の前記動画フレームの圧縮符号化を実行する第1の符号化処理を実行するステップと、複数の前記フレーム期間にわたって1つの静止画フレームの圧縮符号化を実行する第2の符号化処理を実行するステップと、前記所定数のフレーム期間内において、前記第1の符号化処理が完了した後に前記第2の符号化処理の一部を実行させるステップとを備えることを特徴とする。
本発明によれば、回路規模の増大を招くことなく、動画記録中に静止画の同時記録を可能とする符号化装置、撮像装置および符号化方法が提供される。
本発明の第1実施形態に係る符号化装置のブロック図である。 本発明の第1実施形態に係る画像符号化部のブロック図である。 本発明の第1実施形態に係る画像符号化部の動作を示すフローチャートである。 本発明の第1実施形態に係るタイル設定処理の詳細なフローチャートである。 本発明の第1実施形態に係るフレーム分割を説明するための図である。 本発明の第1実施形態に係るフレーム分割を説明するための図である。 本発明の第1実施形態に係る符号化処理を示すタイミングチャートである。 本発明の第2実施形態に係る画像符号化部の動作を示すフローチャートである。 本発明の第2実施形態に係るタイル設定処理の詳細なフローチャートである。 本発明の第2実施形態に係る符号化処理を示すタイミングチャートである。
以下に、本発明の好ましい実施の形態を、添付の図面に基づいて詳細に説明するが、本発明は、以下の実施形態に限定されるものではない。
[第1実施形態]
<システム構成>
図1は、本実施形態に係る符号化装置10のブロック図である。符号化装置10は、例えばデジタルカメラ、ビデオカメラなどの撮像装置であり得る。符号化装置10は、撮像部100、画像処理部101、画像符号化部102、記録部103、メモリバス104、フレームメモリ105、CPU(Central Processing Unit)106、フラッシュメモリ107、CPUバス108を備えている。
撮像部100は、ズームレンズ、フォーカスレンズ、絞りを含む光学系、CCD(Charge Coupled Device)、CMOS(Complementary Metal Oxide Semiconductor)などのイメージセンサ、A/D(Analog/Digital)変換器などから構成される。イメージセンサは、ベイヤー配列された複数の画素を有し、光学系から取り込んだ光信号を電気信号へ変換する。A/D変換器は、アナログの電気信号をデジタルの画像データに変換する。撮像部100は、ベイヤー形式の画像データ(RAW画像)を、メモリバス104を介してフレームメモリ105に格納する。撮像部100は撮像手段として機能する。
画像処理部101は、フレームメモリ105から読み出したRAW画像に対して所謂現像処理を行う。画像処理部101は、RAW画像に対してデベイヤー処理(デモザイク処理)を施し、輝度と色差からなる画像データに変換する。さらに、画像処理部101は、画像データに対してノイズ除去、光学的な歪の補正、画像の適正化などの処理を行う。画像処理部101は、現像処理後の画像データを画像圧縮符号化するため、再度フレームメモリ105に格納する。
画像符号化部102は、フレームメモリ105から読み出した画像データに対して、フレーム間予測とエントロピー符号化による画像データの冗長性を利用した画像圧縮符号化を行い、符号化ビットストリームを出力する。画像符号化部102は、画像圧縮方式として例えばHEVC(High Efficiency Video Codec)方式を採用する。HEVC方式では、動画だけでなく静止画を符号化するための規定も標準化しているため、画像符号化部102は、動画記録と静止画記録の両方を実現することができる。
記録部103は、画像符号化部102からの符号化ビットストリームを、各種アプリケーションで再生および編集互換性が保たれている所定のコンテナ形式(MP4、MOV形式など)に変換する。記録部103は、所定のコンテナ形式に変換した符号化ビットストリームを、USB(Universal Serial Bus)メモリ、SD(登録商標)カード、ハードディスクなどの不揮発メモリ媒体(不図示)に記録する。記録部103は記録手段として機能する。
メモリバス104は、撮像部100、画像処理部101、画像符号化部102、記録部103と、フレームメモリ105との間を接続し、画像データ、符号化データ、各種パラメータデータを高速転送するためのデータバスである。バス転送方式は特に限定されず、ISA(Industry Standard Architecture)、PCI(Peripheral Component Interconnect)−Express、AXI(Advanced eXtensible Interface)などの標準的なバス規格、または独自のバス方式を採用してよい。
フレームメモリ105は、画像処理部101と画像符号化部102で使用される画像データ、フレーム間予測のための参照画像データ、符号化ビットストリームなどを格納する。フレームメモリ105には、大容量のDRAM(Dynamic Random Access Memory)などが用いられる。
CPU106は、符号化装置10を構成する撮像部100、画像処理部101、画像符号化部102、記録部103の起動、停止、割り込み通知などのハードウェア制御を、CPUバス108を介して行うコントローラである。
フラッシュメモリ107は、符号化装置10の各処理ブロックの動作を制御するためのプログラム、各種パラメタなどを格納した不揮発性メモリである。CPU106は、フェッチ動作でフラッシュメモリ107へアクセスする。
CPUバス108は、撮像部100、画像処理部101、画像符号化部102、記録部103などの各ペリフェラルとCPU106とを接続する制御用のバスである。バス転送方式は特に限定されず、メモリバス104と同様の標準化バス規格方式でもよく、十分な処理余裕があれば低速なI2C(I-squared-C)などのシリアル方式でもよい。
<画像符号化部>
図2は、本実施形態に係る画像符号化部102のブロック図である。画像符号化部102は、イントラ予測部200、インター予測部201、イントラ・インター判定部202、予測画像生成部203、整数変換部204、量子化部205、エントロピー符号化部206、符号量制御部207を備えている。画像符号化部102は、さらにビットストリーム生成部208、逆量子化部209、逆整数変換部210、ループフィルタ211、モード制御部212、フレーム分割制御部213を備えている。画像符号化部102は、1フレーム単位の動画の符号化処理をフレーム期間に同期して実行する。すなわち、1フレーム期間内に1フレームの動画の符号化処理を完了させるリアルタイムの符号化処理を行う。
イントラ予測部200は、フレームメモリ105から符号化対象ブロックを含む画像データを読み出し、符号化対象ブロック周辺の参照画素データから生成される複数のイントラ予測画像との相関を計算する。イントラ予測部200は、最も相関の高いイントラ予測モードを選択してイントラ・インター判定部202へ通知する。
インター予測部201は、符号化対象画像となる画像データと、参照画像となる符号化済みの画像データとをフレームメモリ105から読み出す。インター予測部201は、ブロック単位で画素データ同士のパターンマッチングを行って動きベクトルを算出し、動きベクトルをイントラ・インター判定部202に出力する。
イントラ・インター判定部202は、イントラ予測部200と、インター予測部201の処理結果に基づいて、符号化する予測モードを選択する。具体的な選択方法としては、イントラ予測部200で生成された予測画像と、インター予測部201で算出された動きベクトルを用いて参照画像から生成したインター予測画像について、符号化対象画像との予測誤差をそれぞれ比較する。または、イントラ予測部200とインター予測部201がそれぞれ予測誤差を算出し、イントラ・インター判定部202が予測誤差を評価値として取得後、比較する方法でもよい。イントラ・インター判定部202は、予測誤差の比較の結果、差分値が小さい方の予測モードを判定して予測画像生成部203に出力する。
予測画像生成部203は、イントラ・インター判定部202で選択された予測モードに応じて予測画像を生成する。生成した予測画像は、整数変換部204の前段に設けられた減算器に入力され、符号化対象画像との差分画像が生成される。差分画像は、減算器から整数変換部204に出力される。また、予測画像は、ローカルデコード画像生成のために逆整数変換部210の後段に設けられた加算器に出力される。
整数変換部204は、ブロック単位で画像データの空間画素数変換を行って空間周波数領域の係数データに変換する。量子化部205は、符号量制御部207からの目標符号量に基づいて量子化係数を算出し、整数変換部204で生成された係数データに対して量子化処理を行う。量子化された係数データは、エントロピー符号化を行うためにエントロピー符号化部206に出力されるとともに、参照画像と予測画像を生成するために逆量子化部209に出力される。
エントロピー符号化部206は、量子化部205にて量子化された係数データの他、インター予測の場合には動き予測で用いた動きベクトルに対して、ビットデータの出現確率の偏りを利用したエントロピー符号化による情報圧縮を行う。エントロピー符号化としては、例えばCABAC(Context based Adaptive Binary Arithmetic Coding:コンテキスト適応算術符号化)方式が挙げられる。
符号量制御部207は、エントロピー符号化部206が生成する符号化データの符号量に対してフィードバック制御を行う。符号量制御部207は、エントロピー符号化部206から符号化データの符号量を取得し、ビットレート、バッファモデルなどに基づいて1フレーム当たりの目標符号量を算出した後、量子化部205に出力する。
ビットストリーム生成部208は、エントロピー符号化部206からの1フレームの符号化データに相当するピクチャデータに、復号処理のために必要なパラメタを付加し、所定のデータフォーマットに整形して出力する。パラメタには、SPS(Sequence Parameter Set)、PPS(Picture Parameter Set)などのヘッダ情報が含まれ得る。ビットストリーム生成部208から出力されたデータはフレームメモリ105に格納され、さらに記録部103によって画像ファイルとして記録媒体に保存される。
逆量子化部209は、量子化部205によって量子化された係数データに量子化係数を乗じることで、逆量子化された係数データを計算する。逆整数変換部210は、逆量子化部209から出力された係数データを画像データに逆整数変換する。
ループフィルタ211は、逆整数変換部210からの画像データと予測画像生成部203からの予測画像とが加算された画像データに対して、ブロック境界で発生する符号化歪みを軽減するフィルタ処理を行う。フィルタ処理後の画像データは、ローカルデコード画像としてフレームメモリ105へ出力される。
エントロピー符号化部206、ビットストリーム生成部208、符号量制御部207は、画像フレーム単位で処理を行い、画像符号化部102の他の処理ブロックは、所定の矩形画素ブロック(マクロブロック)単位で処理を行うものとする。特に、HEVC方式においては、マクロブロックはCTU(Coding Tree Unit)に相当し、量子化処理をCU(Coding Unit)単位、動きベクトル探索をPU(Prediction Unit)単位、整数変換処理をTU(Transform Unit)単位で行うものとする。
以上の画像符号化部102の各処理ブロックは、符号化手段として機能する。すなわち、符号化手段は、イントラ予測部200、インター予測部201、イントラ・インター判定部202、予測画像生成部203、整数変換部204、量子化部205、エントロピー符号化部206を含み得る。符号化手段は、さらに符号量制御部207、ビットストリーム生成部208、逆量子化部209、逆整数変換部210、ループフィルタ211を含み得る。
モード制御部212は、CPU106からのレジスタ設定などのパラメタ指示に基づいて、画像符号化部102の動作モードの切り替えと、符号化処理のスケジュール管理を行う。動作モードには、動画記録のみが可能な動画モード、動画記録と同時に静止画記録を行うことが可能な静止画同時記録モード、静止画記録のみを行う静止画モードが含まれる。モード制御部212は、スケジューリング手段として機能する。
フレーム分割制御部213は、モード制御部212により静止画同時記録モードが指定されたときに、画像符号化部102による静止画の符号化処理の処理単位を、画像フレーム単位から、画像フレームを分割した部分領域単位に切り替える。ここで、部分領域は、HEVC規格のタイル、H.264規格のスライスであり得る。フレーム分割制御部213は、静止画フレームを複数の部分領域に分割する分割手段として機能する。
<画像符号化部の動作>
図3は、本実施形態に係る画像符号化部102の動作を示すフローチャートである。図3のフローチャートの処理は、符号化装置10において、タッチパネル、ボタンなどの図示しないインタフェースからのユーザ指示をトリガとして動画記録が開始されると、フレーム期間毎に繰り返し実行される。
まず、モード制御部212は、符号化装置10が動画記録中であるか否かを判断する(ステップS301)。動画記録中でない場合(ステップS301でNO)、モード制御部212は、ユーザ操作により動画記録の停止指示がなされたものと判断し、フローチャートの処理を終了する。動画記録中である場合(ステップS301でYES)、モード制御部212は、動画フレームの符号化処理を開始させる(ステップS302)。すなわち、1つの動画フレームがフレームメモリ105から読み出され、イントラ予測部200とインター予測部201に入力される。
続いて、モード制御部212は、動画フレームの符号化処理が完了したか否かを判断する(ステップS303)。すなわち、モード制御部212は、画像符号化部102の各処理ブロックによって1つの動画フレームが圧縮符号化され、ビットストリーム生成部208からフレームメモリ105へのデータの出力が完了したか否かを判断する。
動画フレームの符号化処理が完了していない場合(ステップS303でNO)、モード制御部212は、符号化処理が完了するまで待機する。本実施形態において、モード制御部212は、繰り返し問い合わせを行うポーリング方式で符号化処理の完了を判断するが、判断方法は特に限定されない。モード制御部212は、CPU106からの割り込み通知によって、符号化処理の完了を判断してもよい。
動画フレームの符号化処理が完了すると(ステップS303でYES)、モード制御部212は、CPU106からの指示に基づき動作モードを取得する(ステップS304)。そして、モード制御部212は、現フレーム期間内に、ユーザがレリーズボタン操作などによる静止画の同時記録指示を行ったか否か、すなわち動作モードが静止画同時記録モードに設定された否かを判断する(ステップS305)。
動作モードが静止画同時記録モードでない場合(ステップS305でNO)、モード制御部212は、ステップS301に戻り、次フレームの動画に対する処理を行う。一方、動作モードが静止画同時記録モードである場合(ステップS305でYES)、静止画フレームの符号化処理を開始する。すなわち、動画フレームの符号化処理の実行中におけるユーザ指示をトリガとして、静止画フレームの符号化処理が開始される。静止画フレームの符号化処理が既に開始されているときには、モード制御部212は、記録指示された静止画フレームの符号化処理が完了したか否かを判断する(ステップS306)。
静止画フレームの符号化処理が完了した場合(ステップS306でYES)、モード制御部212は、動作モードを動画記録モードに切り替え、ステップS301に戻り、次フレームの動画に対する処理を行う。静止画フレームの符号化処理が完了していない場合(ステップS306でNO)、モード制御部212は、タイル設定処理を行い、静止画フレームを複数のタイルに分割する(ステップS307)。なお、当該静止画に対して、過去のフレーム期間においてタイル設定処理が既に実行されている場合、再度のタイル設定処理を省略してよい。
モード制御部212は、タイル設定処理の結果に従い、1タイルの静止画(静止画タイル)の符号化処理を開始する(ステップS308)。画像符号化部102において、静止画タイルの符号化処理を行う際のデータパスおよび制御パスは、イントラ予測部200による予測画像を用いた動画フレームの符号化処理を行う際のデータパスおよび制御パスと同様である。
続いて、モード制御部212は、動画フレームの符号化処理と同様に、静止画タイルの符号化処理が完了したかどうかを判断する(ステップS309)。静止画タイルの符号化処理が完了していない場合(ステップS309でNO)、モード制御部212は、符号化処理が完了するまで待機する。
静止画タイルの符号化処理が完了すると(ステップS309でYES)、モード制御部212は、ステップS301に戻り、次の動画フレームに対する処理および次の静止画タイルに対する処理を行う。
続いて、上述のタイル設定処理(ステップS307)について詳述する。本実施形態では、ハードウェア機能として画像符号化部102を実現しているため、符号化処理のスピードはクロック周波数に依存する。
例えば、画像符号化部102の動作クロック周波数を333MHzとし、16×16画素からなる1マクロブロック(MB)の処理に300クロック要する構成を仮定すると、1マクロブロックあたり、約0.9マイクロ秒の処理時間を要することになる。マクロブロックは符号化処理の最小単位である。
1フレームの画素数が4Kサイズ(水平3840画素、垂直2160画素)の動画(以下、4K動画)に対して符号化処理を行う場合、1フレームに含まれるMB数は32,400個であるため、符号化処理が完了するまでに約29ミリ秒かかることになる。結果、4K動画の1秒あたりのフレーム更新周期(フレームレート)について、画像符号化部102のハードウェア性能に応じた上限を約30フレーム毎秒と見積もることができる。
また、1フレームの画素数が2Kサイズ(水平1920画素、垂直1088画素)の動画(以下、2K動画)については、上述と同様の計算から、符号化処理が完了するまでに約7.290ミリ秒かかることになる。すなわち2K動画について、30p(30フレーム毎秒、プログレッシブ走査)での記録を行う場合、1フレーム期間(約33.3ミリ秒)内で約26ミリ秒のマージン時間があると判断できる。さらに、フレームレートが120フレーム毎秒(1フレーム期間が約8.3ミリ秒)までの動画記録が可能であると判断できる。
上述の考えにしたがって、本実施形態に係るフレーム分割制御部213は、静止画同時記録モードでの動作時に、リアルタイム処理が要求される動画の符号化処理におけるマージン時間を算出する。すなわち、フレーム分割制御部213は、1フレーム期間の長さから1フレームの動画の符号化処理にかかる時間を差し引いた時間をマージン時間とする。フレーム分割制御部213は、マージン時間に基づいてタイル設定処理を行う。
図4は、本実施形態に係るタイル設定処理の詳細なフローチャートである。フレーム分割制御部213は、マクロブロックあたりの符号化処理にかかる時間(以下、マクロブロック処理時間)を取得する(ステップS401)。マクロブロック処理時間は、画像符号化部102のハードウェア性能から導き出される固定値であるため、読み出し専用メモリに保持されていてもよい。また、フレーム分割制御部213は、マクロブロック処理時間を、符号化装置10の起動初期化時に1回だけ取得するように構成されてもよい。
フレーム分割制御部213は、現在記録中の動画の画素数を取得する(ステップS402)。フレーム分割制御部213は、画素数をマクロブロック数に換算し、マクロブロック数にマクロブロック処理時間を乗じて、1つの動画フレームの符号化処理にかかる時間(以下、動画フレーム処理時間)を計算する(ステップS403)。
フレーム分割制御部213は、現在記録中の動画のフレームレートを取得する(ステップS404)。フレーム分割制御部213は、フレームレートから換算した1フレーム期間の長さから、動画フレーム処理時間を減じ、マージン時間を計算する(ステップS405)。
フレーム分割制御部213は、同時記録を指示された静止画の画素数を取得する(ステップS406)。フレーム分割制御部213は、ステップS403と同様に、画素数から換算されたマクロブロック数にマクロブロック処理時間を乗じて、1つの静止画フレームの符号化処理にかかる時間(以下、静止画フレーム処理時間)を計算する(ステップS407)。
フレーム分割制御部213は、静止画フレーム処理時間とマージン時間から、静止画フレームの分割数を決定する(ステップS408)。静止画フレーム処理時間をマージン時間で除し、これにより得られた値の小数点以下を切り上げた値が、静止画フレームの分割数となる。マージン時間より静止画フレーム処理時間が小さい場合、分割数は1であり、静止画フレームを分割する必要はない。
一方、マージン時間より静止画フレーム処理時間が大きい場合は、分割数が2以上になり、静止画フレームは複数のタイルに分割される。フレーム分割制御部213は、静止画の符号化処理の処理単位をフレーム単位からタイル単位に切り替える。これにより、画像符号化部102は、分割数と同じ数のフレーム期間をかけて、間欠的に静止画の符号化処理を行う。すなわち、フレーム期間毎に1つの静止画タイルの符号化処理が行われる。
フレーム分割制御部213は、静止画フレームの分割数と画素数から、タイルサイズを決定する(ステップS409)。タイルサイズに基づいて、フレーム分割制御部213は、画像符号化部102の各処理ブロックにおけるアドレス計算などの符号化シーケンスを管理する。
本実施形態では、分割数が2の場合、静止画フレームをマクロブロックのアライメント位置で水平方向において2分割する。同様に、分割数が3の場合、静止画フレームを水平方向において3分割し、分割数が4の場合、静止画フレームを水平方向において2分割かつ垂直方向において2分割(すなわち4分割)する。分割数が5以上かつ奇数の場合には、分割数を切り上げて2の倍数になるように静止画フレームを分割するものとするが、特に限定はしないものとする。
<フレーム分割例>
図5A、図5Bは、本実施形態に係るフレーム分割を説明するための図である。図5Aには、30フレーム毎秒での4K動画(4K30p動画)の記録時に、4K静止画の同時記録を行う場合の静止画フレームの分割例が示されている。図5Bには、30フレーム毎秒での2K動画(2K30p動画)の記録時に、8Kサイズ(水平7680画素、垂直4320画素)の静止画(8K静止画)の同時記録を行う場合の静止画フレームの分割例が示されている。
上述の説明と同様に、画像符号化部102のハードウェア性能を、クロック周波数333MHz、16×16画素からなる1マクロブロックの処理に300クロック(約0.9マイクロ秒)要するものとする。
図5Aに示される4K30p動画の動画フレーム処理時間は約29.16ミリ秒であり、約33ミリ秒のフレーム周期に対して、約3.84ミリ秒のマージン時間が確保できる。フレーム分割制御部213は、4K静止画の符号化要求を受信した場合、静止画フレーム符号化時間を動画フレーム処理時間と同じく約29.16ミリ秒と見積もる。フレーム分割制御部213は、静止画フレーム処理時間をマージン時間で除算し、これにより得られた値の小数点以下を切り上げることにより、同時記録を行うためには4K静止画を8分割する必要があると判断する。
結果、1フレームの4K静止画は、16×16画素のマクロブロックのアライメント境界に合わせたサイズで、タイルAからタイルHまでの8つの領域に分割される。これらのタイルは、8フレーム期間かけて順次符号化処理される。
図5Bに示される2K30p動画の動画フレーム処理時間は、約7.29ミリ秒であり、約33ミリ秒のフレーム周期に対して、約25.71ミリ秒のマージン時間が確保できる。フレーム分割制御部213は、8K静止画の符号化要求を受信した場合、静止画フレーム処理時間を約116.64ミリ秒と見積もる。フレーム分割制御部213は、静止画フレーム処理時間をマージン時間で除算し、これにより得られた値の小数点以下を切り上げることにより、同時記録を行うためには8K静止画を6分割する必要があると判断する。
結果、1フレームの8K静止画は、マクロブロックのアライメント境界に合わせた2560画素×2160ラインのサイズで、タイルAからタイルFまでの6つの領域に分割される。これらのタイルは、6フレーム期間かけて順次符号化処理される。
<静止画同時記録>
図6は、本実施形態に係る符号化処理を示すタイミングチャートである。まず、時刻tAにおいて動画記録が開始される。画像符号化部102は、フレーム期間毎に1つの動画フレームの符号化処理を実行する。各フレーム期間は、図中に示したように、動画フレーム符号化期間の後にマージン期間を有する。マージン期間の長さは上述のマージン時間に等しい。
時刻tBにおいて、ユーザ操作により静止画同時記録の指示が発行されると、マージン期間は、タイル単位での静止画の符号化処理を実行するための静止画タイル符号化期間として割り当てられる。図6の例では、1つの静止画フレームはタイルAからタイルDまでの4つのタイルに分割され、静止画同時記録の指示がなされたフレーム期間から4フレーム期間かけて1フレーム分の静止画の符号化処理が実行される。
図6に示した例よりも静止画フレームの画素数がさらに大きく、静止画タイル符号化期間内で静止画タイルの符号化処理が完了できない場合、または動画フレームの画素数がさらに大きくマージン時間が不足する場合には、分割数をさらに増加させればよい。例えば、静止画フレームの分割数は5以上に増加されるとともに、タイル単位の静止画の符号化処理を間欠的に行う静止画フレーム符号化期間は5フレーム期間以上に延長される。
本実施形態によれば、1フレーム期間内において、動画フレームの符号化処理が完了した後に静止画フレームの符号化処理の一部を実行する。1つの静止画フレームは複数のタイルに分割され、静止画フレームの符号化処理は、複数フレーム期間かけてタイル単位で実行される。これにより、回路規模を抑制しつつ、動画記録中に静止画を同時記録することが可能となる。
従来技術においても、動画だけでなく静止画にも適用可能なHEVC方式を採用することで、動画記録中の静止画同時記録が可能となるが、動画記録中には動画と同じ画素数までの静止画しか記録できないという機能制約が出てしまう虞がある。本実施形態によれば、フレーム期間における動画の符号化処理後の残りの期間を利用して静止画の符号化処理を実行するため、動画の符号化処理に影響を与えることなく高画素数の静止画を同時記録することが可能となる。
[第2実施形態]
第2実施形態では、画像符号化部102は、フレーム期間とは非同期に動画の符号化処理を実行可能であり、複数の動画フレームの符号化処理を完了した後に、タイル単位の静止画の符号化処理を実行する。以下、第1実施形態と異なる点を中心に説明する。
フレーム間動き予測による時間方向の冗長性を利用したHEVC、H.264などの圧縮方式では、時間的に前後する動画フレームが参照される。画像符号化部102は、フレームメモリ105に一時記憶された複数の動画フレームに対して符号化処理を実行する。
例えば、画像符号化部102は、時間的に前後に位置する画像を参照するB(Bi-directional)フレームを用いたLongGOP(Group Of Pictures)構造の符号化処理を行う。LongGOP構造では、動画フレームに対して入力順で符号化するのではなく、入力されたフレームの並び替えを行い、未来に位置する参照フレームから先に符号化される。
代表的なM=3のLongGOP構造では、3フレーム単位でフレームの並び替えが行われる。ここでMは、Bフレーム以外、すなわち時間的に前に位置する画像を参照するP(Predictive)フレームまたはフレーム内で符号化処理を完結するI(Intra)フレームの繰り返し周期を表す。言い換えれば、複数フレームの動画シーケンスにおいて、3フレーム毎にPフレームまたはIフレームが出現する。
CPU106は、動画の符号化処理の制御を行う際に、フレームメモリ105に複数の動画フレームを蓄積してから、複数の動画フレームをまとめて画像符号化部102における符号化処理を開始してもよい。この場合、画像符号化部102は、フレームメモリ105内の画像データのオーバーフローまたはアンダーフローが発生しないように、Mフレーム期間内にM個の動画フレームの符号化処理を完了させる。
<画像符号化部の動作>
図7は、本実施形態に係る画像符号化部102の動作を示すフローチャートである。図7のフローチャートの処理は、符号化装置10において、タッチパネル、ボタンなどの図示しないインタフェースからのユーザ指示をトリガとして動画記録が開始されると、フレーム期間毎に繰り返し実行される。
動画記録中の判定処理から静止画同時記録モードの判定処理(ステップS701〜S705)までは、第1実施形態におけるステップS301〜S305と同様であるため、説明を省略する。モード制御部212は、静止画の符号化処理の開始タイミングを判定するために、並べ替え単位分のフレームについて動画の符号化処理が完了したか否かを判断する(ステップS706)。
所定の並び替え単位(本実施形態では3フレーム)の動画の符号化処理が完了した場合(ステップS706でYES)、モード制御部212は、ステップS707に進む。静止画の符号化処理についての完了判定処理(ステップS707〜S710)は、第1実施形態におけるステップS306〜S39と同様であるため、説明を省略する。
一方、所定の並び替え単位の動画の符号化処理が完了していない場合(ステップS706でNO)、モード制御部212は、ステップS701に戻り、現フレームと同じ並び替え単位内の次の動画フレームに対する処理を行う。
図8は、本実施形態に係るタイル設定処理の詳細なフローチャートである。マクロブロック処理時間の取得処理と動画画素数の取得処理(ステップS801、S802)は、第1実施形態におけるステップS401、S402と同様であるため、説明を省略する。
フレーム分割制御部213は、LongGOP構造における並べ替え単位のフレーム数に基づいて、所定数の動画フレームの符号化処理にかかる時間を計算する(ステップS803)。ここで処理数は、並び替え単位のフレーム数と等しく3であり、フレーム分割制御部213は、フレーム周期に同期せずに連続して3つの動画フレームの符号化処理を行う際に要する時間を計算する。本実施形態においては、所定数の動画フレームの符号化処理に要する時間を動画フレーム処理時間と呼ぶ。第1実施形態と同様の動作クロック数とマクロブロック処理時間を仮定すると、4K30p動画の動画フレーム処理時間は、約87.6ミリ秒になる。
フレーム分割制御部213は、現在記録中の動画のフレームレートを取得する(ステップS804)。フレーム分割制御部213は、フレームレートから換算した3フレーム期間の長さから、動画フレーム処理時間を減じ、所定数のフレーム期間についてのマージン時間を計算する(ステップS805)。フレーム分割制御部213は、3フレーム期間(100ミリ秒)から、動画フレーム処理時間(約87.6ミリ秒)を減じることにより、約12.4ミリ秒のマージン時間を得る。
静止画の画素数取得処理からタイルサイズの決定処理(ステップS806〜S809)は、第1実施形態におけるステップS406〜S409と同様である。フレーム分割制御部213は、4K静止画の静止画フレーム処理時間(29.16ミリ秒)をマージン時間(12.4ミリ秒)で除算することにより、4K静止画を3分割することを決定する。第1実施形態に比べて、静止画の分割数は少なくなる。
<静止画同時記録>
図9は、本実施形態に係る符号化方法を示すタイミングチャートである。まず、時刻tAにおいて動画記録が開始される。画像符号化部102は、3フレーム単位でフレーム並び替えを行い、3つの動画フレームの符号化処理を3フレーム期間連続して間隙無く実行する非同期の符号化処理を行う。図9には、フレーム並び替えの3フレーム単位として、Iフレーム、Bフレーム、Bフレームの組と、Pフレーム、Bフレーム、Bフレームの組が示されている。3フレーム期間毎に、3フレーム分の動画フレーム符号化期間の後でマージン期間が確保される。第1実施形態と比較して、マージン期間は広がるため、静止画の符号化処理に割り当て可能な時間が長くなる。
時刻tBにおいて、ユーザ操作により静止画同時記録の指示が発行されると、マージン期間は静止画タイル符号化期間として割り当てられる。図9の例では、1つの静止画フレームは2つのタイルに分割され、静止画同時記録の指示がなされた後の最初のマージン期間から次のマージン期間にかけて1フレーム分の静止画の符号化処理が実行される。
本実施形態によれば、フレームの並び替え単位に対応する数のフレーム期間毎に、マージン期間をまとめて確保することができるため、静止画フレームの分割数を減らすことが可能となる。分割数を減らすことは符号化データ以外のヘッダ情報などのオーバーヘッドデータを削減することになり、画像データ自体への符号量の割り当てを増やし、画質向上に寄与する。
10 符号化装置
102 画像符号化部
105 フレームメモリ
106 CPU
200 イントラ予測部
201 インター予測部
202 イントラ・インター判定部
203 予測画像生成部
204 整数変換部
205 量子化部
206 エントロピー符号化部
207 符号制御部
208 ビットストリーム生成部
209 逆量子化部
210 逆整数変換部
211 ループフィルタ
212 モード制御部
213 フレーム分割制御部

Claims (14)

  1. フレーム期間毎に入力される動画フレームに対して、所定数の前記フレーム期間内で前記所定数の前記動画フレームの圧縮符号化を実行する第1の符号化処理を実行するとともに、複数の前記フレーム期間にわたって1つの静止画フレームの圧縮符号化を実行する第2の符号化処理を実行する符号化手段と、
    前記所定数のフレーム期間内において、前記第1の符号化処理が完了した後に前記第2の符号化処理の一部を実行させるスケジューリング手段とを備えることを特徴とする符号化装置。
  2. 前記静止画フレームを複数の部分領域に分割する分割手段を備え、
    前記符号化手段は、前記所定数のフレーム期間内において、前記部分領域に対する前記第2の符号化処理を実行することを特徴とする請求項1に記載の符号化装置。
  3. 前記分割手段は、前記第2の符号化処理の最小単位となるマクロブロックに基づき、1または複数のマクロブロックごとに前記静止画フレームを分割することを特徴とする請求項2に記載の符号化装置。
  4. 前記部分領域は、HEVC(High Efficiency Video Coding)規格のタイルであることを特徴とする請求項2または3に記載の符号化装置。
  5. 前記部分領域は、H.264規格のスライスであることを特徴とする請求項2または3に記載の符号化装置。
  6. 前記分割手段は、前記動画フレームの画素数と前記静止画フレームの画素数に基づいて、前記部分領域のサイズを決定することを特徴とする請求項2乃至5のいずれか1項に記載の符号化装置。
  7. 前記分割手段は、前記第1の符号化処理にかかる処理時間を算出し、前記所定数のフレーム期間の長さと前記処理時間との差に基づいて、前記部分領域のサイズを決定することを特徴とする請求項6に記載の符号化装置。
  8. 前記スケジューリング手段は、前記第1の符号化処理の実行中におけるユーザ指示をトリガとして、前記第2の符号化処理を開始させることを特徴とする請求項1乃至7のいずれか1項に記載の符号化装置。
  9. 前記静止画フレームの画素数は、前記動画フレームの画素数よりも大きいことを特徴とする請求項1乃至8のいずれか1項に記載の符号化装置。
  10. 前記所定数は1であることを特徴とする請求項1乃至9のいずれか1項に記載の符号化装置。
  11. 前記所定数は、GOP(Group Of Pictures)構造における前記動画フレームの並び替え単位に基づくことを特徴とする請求項1乃至9のいずれか1項に記載の符号化装置。
  12. 前記フレーム期間は、前記第1の符号化処理の期間とマージン時間を含むことを特徴とする請求項1乃至11のいずれか1項に記載の符号化装置。
  13. 請求項1乃至12のいずれか1項に記載の符号化装置と、
    前記動画フレームおよび前記静止画フレームを生成する撮像手段と、
    前記第1の符号化処理により圧縮符号化された前記動画フレーム、および前記第2の符号化処理により圧縮符号化された前記静止画フレームを記録する記録手段とを備えることを特徴とする撮像装置。
  14. フレーム期間毎に入力される動画フレームに対して、所定数の前記フレーム期間内で前記所定数の前記動画フレームの圧縮符号化を実行する第1の符号化処理を実行するステップと、
    複数の前記フレーム期間にわたって1つの静止画フレームの圧縮符号化を実行する第2の符号化処理を実行するステップと、
    前記所定数のフレーム期間内において、前記第1の符号化処理が完了した後に前記第2の符号化処理の一部を実行させるステップとを備えることを特徴とする符号化方法。
JP2017120289A 2017-06-20 2017-06-20 符号化装置、撮像装置および符号化方法 Pending JP2019004439A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017120289A JP2019004439A (ja) 2017-06-20 2017-06-20 符号化装置、撮像装置および符号化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017120289A JP2019004439A (ja) 2017-06-20 2017-06-20 符号化装置、撮像装置および符号化方法

Publications (1)

Publication Number Publication Date
JP2019004439A true JP2019004439A (ja) 2019-01-10

Family

ID=65008188

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017120289A Pending JP2019004439A (ja) 2017-06-20 2017-06-20 符号化装置、撮像装置および符号化方法

Country Status (1)

Country Link
JP (1) JP2019004439A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110889411A (zh) * 2019-09-27 2020-03-17 武汉创想外码科技有限公司 基于ai芯片的通用图像识别模型
JP2021040269A (ja) * 2019-09-04 2021-03-11 キヤノン株式会社 撮像装置及びその制御方法及びプログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021040269A (ja) * 2019-09-04 2021-03-11 キヤノン株式会社 撮像装置及びその制御方法及びプログラム
JP7414431B2 (ja) 2019-09-04 2024-01-16 キヤノン株式会社 撮像装置及びその制御方法及びプログラム
CN110889411A (zh) * 2019-09-27 2020-03-17 武汉创想外码科技有限公司 基于ai芯片的通用图像识别模型
CN110889411B (zh) * 2019-09-27 2023-12-08 武汉创想外码科技有限公司 基于ai芯片的通用图像识别模型

Similar Documents

Publication Publication Date Title
JP5302769B2 (ja) スキャン変換装置及び画像符号化装置及びそれらの制御方法
WO2009139123A1 (ja) 画像処理装置およびそれを搭載した撮像装置
JP5340172B2 (ja) 画像符号化装置及び画像符号化方法
JP5995583B2 (ja) 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法、及びプログラム
JP2007189518A (ja) 信号処理装置、撮像装置、ネットワークカメラシステム及び映像システム
JP2007036738A (ja) 動画像符号化装置、方法、及びプログラム
WO2014010224A1 (ja) 動画像圧縮装置、動画像復号装置、画像圧縮装置、画像復号装置、撮像装置およびプログラム
JP2019004439A (ja) 符号化装置、撮像装置および符号化方法
JP2012175424A (ja) 符号化処理装置および符号化処理方法
TWI736528B (zh) 多媒體編解碼器、包括其之應用處理器、及操作該應用處理器之方法
JP4769392B2 (ja) 信号処理装置
JP5974691B2 (ja) 動画像圧縮装置、撮像装置およびプログラム
JP2008289105A (ja) 画像処理装置およびそれを搭載した撮像装置
JP4594163B2 (ja) 画像符号化方法、及び画像符号化装置
JP7431549B2 (ja) 符号化装置、撮像装置、制御方法、及びプログラム
JP7451131B2 (ja) 画像符号化装置、画像符号化方法、及びプログラム
JP2018191136A (ja) 符号化装置、符号化方法およびプログラム
JP2014075708A (ja) 動画像符号化装置及び動画像符号化方法
JP4312070B2 (ja) デジタルカメラ
JP2005051810A (ja) デジタルカメラ
JP4338727B2 (ja) 画像処理装置
JP5974692B2 (ja) 動画像復号装置およびプログラム
JP2020108017A (ja) 画像符号化装置及びその制御方法及びプログラム
JP2023008624A (ja) 撮像装置及びその制御方法及びプログラム
JP4338725B2 (ja) 画像処理装置

Legal Events

Date Code Title Description
RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20171214

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20180126