JP2014165651A - Image processing device - Google Patents
Image processing device Download PDFInfo
- Publication number
- JP2014165651A JP2014165651A JP2013034828A JP2013034828A JP2014165651A JP 2014165651 A JP2014165651 A JP 2014165651A JP 2013034828 A JP2013034828 A JP 2013034828A JP 2013034828 A JP2013034828 A JP 2013034828A JP 2014165651 A JP2014165651 A JP 2014165651A
- Authority
- JP
- Japan
- Prior art keywords
- frame
- memory
- unit
- control unit
- 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
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
この発明は、フレーム画像データを加工する画像処理装置に関する。 The present invention relates to an image processing apparatus that processes frame image data.
従来、動画像のデータとして1画面をフレーム単位とするフレーム画像を扱う画像処理装置がある。例えば、符号化されたストリームデータを入力とし、入力されたストリームデータを復号してフレーム単位のフレーム画像を生成して出力する。または、インタレース方式の画像データを入力とし、フィールド単位の画像データからプログレッシブ方式のフレーム画像データを生成出力する。このような画像処理装置から出力されたフレーム画像は、表示装置に入力されて所定のフレームレートで表示される。 2. Description of the Related Art Conventionally, there is an image processing apparatus that handles frame images in which one screen is a frame unit as moving image data. For example, encoded stream data is input, and the input stream data is decoded to generate and output a frame image in units of frames. Alternatively, the interlace image data is input, and the progressive frame image data is generated and output from the field unit image data. The frame image output from such an image processing device is input to the display device and displayed at a predetermined frame rate.
このような画像処理装置において、符号化されたストリームデータにデータ誤りがある場合に、そのデータ誤りが影響するフレーム画像は正しく復号されないことになるため、符号化されたストリームデータにデータ誤りがある場合は、表示装置から復号誤りが存在するフレーム画像が表示されることとなり、表示される動画像に違和感を生じさせるという問題があった。また、表示装置は所定のフレームレートで出力することになり、画像処理装置は所定の時間間隔でフレーム画像を出力する必要が生じる。このとき、フレーム画像を生成する画像処理が間に合わずにフレームの欠落が生じた場合は、表示装置から1フレーム欠落した状態で表示されることとなり、表示される動画像に違和感を生じさせるという問題があった。 In such an image processing apparatus, if there is a data error in the encoded stream data, the frame image affected by the data error will not be correctly decoded, and therefore there is a data error in the encoded stream data. In this case, there is a problem in that a frame image having a decoding error is displayed from the display device, and the displayed moving image is uncomfortable. Further, the display device outputs at a predetermined frame rate, and the image processing device needs to output frame images at predetermined time intervals. At this time, if the frame processing is not performed in time and a frame is missing, one frame is missing from the display device, and the displayed moving image is uncomfortable. was there.
そこで、符号化されたストリームデータを入力とし、入力されたストリームデータを復号してフレーム単位のフレーム画像を生成して出力する場合、復号したフレーム画像をフレーム単位で記憶するメモリを備え、復号誤りが存在するフレーム画像が生成された場合、復号に失敗したフレーム画像の全部または一部についてその直前および/または直後のフレーム画像の対応する位置のデータを利用して、新たなフレーム画像を作成する方法があった。(例えば、特許文献1参照)。 Therefore, when the encoded stream data is input and the input stream data is decoded to generate and output a frame image in units of frames, a memory for storing the decoded frame image in units of frames is provided, and a decoding error is provided. When a frame image in which a frame exists is generated, a new frame image is created by using the data of the corresponding position of the immediately preceding and / or immediately following frame image for all or part of the frame image that has failed to be decoded. There was a way. (For example, refer to Patent Document 1).
また、生成したフレーム画像をフレーム単位で記憶するメモリを備え、所定の期間でフレーム画像の生成が間に合わずに1フレーム欠落した場合に、正しく表示するのに支障のある欠落したフレーム画像の前後のフレーム画像から補間フレームを生成して補うという方法が一般的にあり、簡易な処理で主観的に劣化の少ない補間フレームを生成する方法として、生成されたフレーム画像から動きベクトルを予測し、予測した動きベクトルのばらつきが小さい場合には補間フレームを生成し、ばらつきの大きい場合は動きベクトルによる補間処理を行わないという方法があった。(例えば、特許文献2参照)。 In addition, a memory for storing the generated frame images in units of frames is provided, and when one frame is missing because the generation of the frame images is not in time for a predetermined period, before and after the missing frame images that are hindered to be displayed correctly There is generally a method of generating and supplementing an interpolation frame from a frame image. As a method of generating an interpolation frame with little subjective deterioration by simple processing, a motion vector is predicted from the generated frame image and predicted. There is a method of generating an interpolation frame when the variation of the motion vector is small, and not performing the interpolation process using the motion vector when the variation is large. (For example, refer to Patent Document 2).
しかしながら、特許文献1や特許文献2のような方法では、復号の失敗や動きベクトルの予測等の判定結果から動作モードを選択して動作を切り替えているため、ハードウェアで実現しようとした場合に、各動作モードに対応した回路をあらかじめ実装しておく必要があり、動作モードが複数ある場合、回路規模が大きくなるという問題点があった。
However, in the methods such as
この発明は、上述のような課題を解決するためになされたもので、上述のように動作モードが複数ある場合であっても、回路規模の増加をすることなく、それぞれの加工処理を施して正しく表示するのに支障のないフレーム画像を出力する画像処理装置を得るものである。 The present invention has been made to solve the above-described problems. Even when there are a plurality of operation modes as described above, each processing process is performed without increasing the circuit scale. It is an object of the present invention to obtain an image processing apparatus that outputs a frame image that does not hinder correct display.
この発明に係る画像処理装置においては、フレーム画像を生成し出力する画像生成部と、前記フレーム画像の動作モードを判定するモード切替判定部と、前記フレーム画像をメモリに書き込みまたは読み出すメモリ制御部と、前記動作モードに基づいて前記メモリ制御部が前記メモリから読み出した前記フレーム画像に画像処理を行い出力する画像処理部と、前記メモリ制御部の回路のうち一部をパーシャルリコンフィギュレーション可能に制御するパーシャルリコンフィギュレーション制御部とを備え、前記メモリ制御部は、パーシャルリコンフィギュレーション可能なプログラマブルロジックデバイスを用いて成るものであって、前記パーシャルリコンフィギュレーション制御部は、前記動作モードに基づいて前記メモリ制御部の回路のうち一部をコンフィギュレーションすることを特徴とするものである。 In the image processing apparatus according to the present invention, an image generation unit that generates and outputs a frame image, a mode switching determination unit that determines an operation mode of the frame image, a memory control unit that writes or reads the frame image into a memory, and The memory control unit performs image processing on the frame image read from the memory based on the operation mode, and outputs a part of the circuit of the memory control unit so that partial reconfiguration is possible. A partial reconfiguration control unit, the memory control unit using a programmable logic device capable of partial reconfiguration, wherein the partial reconfiguration control unit is based on the operation mode. Of the memory control circuit It is characterized in that configuration a portion Chi.
この発明は、メモリ制御部及び画像処理部の回路のうち一部をパーシャルリコンフィギュレーション可能に制御するパーシャルリコンフィギュレーション制御部を備え、フレーム画像の動作モードを判定するモード切替判定部の結果に基づいてパーシャルリコンフィギュレーションすることにより、動作モードが複数ある場合であっても、回路規模の増加をすることなく、加工処理を施して正しく表示するのに支障のないフレーム画像を出力する画像処理装置を得ることができる。 The present invention includes a partial reconfiguration control unit that controls a part of the circuits of the memory control unit and the image processing unit so as to enable partial reconfiguration, and the result of the mode switching determination unit that determines the operation mode of the frame image. Image processing that outputs frame images that do not hinder processing and display correctly without increasing the circuit scale, even if there are multiple operation modes by performing partial reconfiguration based on A device can be obtained.
実施の形態1.
図1は、この発明を実施するための実施の形態1における画像処理装置を示すものである。図1において、画像生成部1が生成したフレーム画像をメモリ制御部3によってメモリ4に書き込みまたは読み出しを行い、メモリ制御部3が読み出したフレーム画像を画像処理部6に供給し、画像出力を出力する。また、モード切替判定部2によって画像生成部1からの出力が正常に出力されたか否かを判定し、判定結果として画像生成部1からの出力が正常に出力されたか否かの識別とその切り替わりタイミングがわかる信号(モード切替指示信号)をメモリ制御部3と画像処理部6とパーシャルリコンフィギュレーション制御部7とに出力し、パーシャルリコンフィギュレーション制御部7は、コンフィギュレーション回路にパーシャルリコンフィギュレーションを指示する信号を出力し、コンフィギュレーション回路からはパーシャルリコンフィギュレーションデータが出力されて、メモリ制御部3の一部をパーシャルリコンフィギュレーションする。また、動きベクトル予測部5は、メモリ制御部3からの複数のフレーム画像出力から動きベクトルを予測し、予測結果をメモリ制御部3へ出力する。以降、モード切替判定部2の判定結果が画像生成部1からの出力が正常に出力された状態を通常モード、正常に出力されなかった状態を補間モードともいうこととする。
FIG. 1 shows an image processing apparatus according to Embodiment 1 for carrying out the present invention. In FIG. 1, the frame image generated by the
次に、各構成要素の詳細について説明する。画像生成部1は、フレーム画像を生成し、メモリ制御部3へ出力する。このとき、フレームごとに生成開始を示す処理開始パルスを出力し、フレーム画像の生成完了を示す処理完了パルスを出力する。これら処理開始パルス及び処理完了パルスは、モード切替判定部2に供給する。画像生成部1は、例えば符号化されたストリームデータを入力とし、入力されたストリームデータを復号してフレーム単位のフレーム画像を生成して出力するものである。
Next, details of each component will be described. The
他の態様として、インタレース方式の画像データを入力としフィールド単位の画像データからプログレッシブ方式のフレーム画像データを生成する。また、他の態様として、あるフレームレートで入力されたフレーム画像を所定のフレームレートに変換するフレームレート変換処理を行ってフレーム画像を生成するものである。また、他の態様として、ある画像サイズで入力されたフレーム画像を所定の画像サイズのフレーム画像を生成するものである。 As another aspect, progressive frame image data is generated from field-based image data using interlaced image data as input. As another aspect, a frame image is generated by performing a frame rate conversion process for converting a frame image input at a certain frame rate into a predetermined frame rate. As another aspect, a frame image having a predetermined image size is generated from a frame image input with a certain image size.
モード切替判定部2は、画像生成部1からの出力が正常に出力されたか否かを判定する。図2は、モード切替判定部2の一例を示す図である。画像生成部1から入力された処理開始パルスから処理完了パルスが入力されるまでの時間間隔が所定の期間の範囲にあるか否かを判定する。カウンタ21は、処理開始パルスが入力されたときに初期値に戻って所定のクロックでカウントを行い、処理完了パルスが入力されたときにそのカウントを停止する。
The mode
比較回路22は、カウンタ21のカウント値と設定値との比較を行い、所定の範囲内で初期値に戻った場合は画像生成部1からの出力が正常に出力されたと判断し、所定の範囲内で初期値に戻らなかった場合は画像生成部1からの出力が正常に出力されなかったと判断する。または、所定の範囲までにカウント値が停止した場合は画像生成部1からの出力が正常に出力されたと判断し、所定の範囲までにカウント値が停止しなかった場合は画像生成部1からの出力が正常に出力されなかったと判断する。
The
ここで設定値は、想定される画像生成処理時間に対応する値を設定するものであって、所望のフレームレートで表示するための時間とカウンタに用いる所定のクロックに基づいて設定される。 Here, the set value is a value corresponding to an assumed image generation processing time, and is set based on a time for displaying at a desired frame rate and a predetermined clock used for the counter.
図1に戻ってメモリ制御部3について説明する。メモリ制御部3は、画像生成部1からのフレーム画像をメモリ4に書き込み、所定のタイミングで読み出してフレーム画像を出力する。メモリ4は、複数のフレーム画像が格納できる容量を有して複数のフレーム画像を同時に出力可能に構成されるものである。図1では、第1のメモリとしてDRAM(Dynamic Random Access Memory)で構成されたメモリDRAM41と、第2のメモリとしてSRAM(Static Random Access Memory)で構成されたメモリSRAM42とで構成されているものを示す。
Returning to FIG. 1, the memory control unit 3 will be described. The memory control unit 3 writes the frame image from the
このとき、メモリ制御部3は、第1のメモリであるDRAM41にアクセスして書き込み又は読み出しを行うDRAM制御部32と、第2のメモリであるSRAM42にアクセスして書き込み又は読み出しを行うSRAM制御部33と、これらDRAM制御部32及びSRAM制御部33がそれぞれアクセスするメモリDRAM41及びSRAM42のアドレスを生成するアドレス生成部31とを備える。
At this time, the memory control unit 3 accesses the
メモリ制御部3は、モード切替判定部2の判定結果に基づいて、入力されたメモリ制御部3からのフレーム画像データから加工して表示装置へ出力する画像処理部6へフレーム画像データを出力する。モード切替判定部2の判定結果が通常モードを示す場合は、SRAM制御部33がSRAM42から読み出したフレーム画像データを出力する。一方、モード切替判定部2の判定結果が補間モードを示す場合は、DRAM制御部32がDRAM41から読み出したフレーム画像データとSRAM制御部33がSRAM42から読み出したフレーム画像データとを出力する。アドレス生成部31の詳細とメモリ制御部3が画像処理部6へ出力するために読み出すフレーム画像の読み出し方の詳細については後述する。
The memory control unit 3 outputs the frame image data to the
なお、少なくともメモリ制御部3は、パーシャルリコンフィギュレーションが可能なプログラマブルロジックデバイスから成るものであって、メモリ制御部3の一部の回路であるアドレス生成部31は、パーシャルリコンフィギュレーションの対象となる回路とする。
Note that at least the memory control unit 3 is composed of a programmable logic device capable of partial reconfiguration, and the
パーシャルリコンフィギュレーションが可能なプログラマブルロジックデバイスとは、例えばFPGA(Field Programable Gate Array)のようなプログラマブルロジックデバイスであって、近年ではFPGA上に展開された回路の一部分のみを回路の動作中に書き換えることが可能な、部分的再構築(パーシャルリコンフィギュレーション)技術が実用化されている。これは従来では、回路の一部分を変更する場合であっても、一度FPGAの動作を止めた後にFPGAに実装する全ての回路を再度コンフィギュレーションする必要があったものを、FPGA上の回路を動作させたまま、回路の一部分のみを別の回路にコンフィギュレーションする事ができる技術である。つまり、パーシャルリコンフィギュレーション技術を用いれば、ハードウェア資源を増やすことなく別機能を実現する事が可能となる。 A programmable logic device capable of partial reconfiguration is, for example, a programmable logic device such as a field programmable gate array (FPGA), and in recent years, only a part of the circuit developed on the FPGA is rewritten during the operation of the circuit. A partial reconfiguration technique that can be used has been put into practical use. Conventionally, even if a part of the circuit is changed, it is necessary to reconfigure all the circuits mounted on the FPGA after stopping the operation of the FPGA once. This is a technique that allows only a part of a circuit to be configured in another circuit while the circuit is left. In other words, if the partial reconfiguration technique is used, it is possible to realize another function without increasing hardware resources.
ただし、パーシャルリコンフィギュレーション対象となる領域のFPGA上での面積は、その領域にパーシャルリコンフィギュレーションを行う複数の回路のうち最大の回路規模を持つ回路の回路規模で決まる。また、コンフィギュレーションにかかる時間はコンフィギュレーションする領域の面積に比例するため、動作中に処理の空き時間内でパーシャルリコンフィギュレーションを実行しなければならない事を考えると、いたずらに大きな領域をパーシャルリコンフィギュレーション対象とすると、コンフィギュレーションに要する時間が長くなってしまい処理時間を圧迫してしまうという問題がある。 However, the area on the FPGA of the region to be partially reconfigured is determined by the circuit scale of the circuit having the maximum circuit scale among a plurality of circuits that perform partial reconfiguration in the region. In addition, since the time required for configuration is proportional to the area of the area to be configured, considering that partial reconfiguration must be executed within the processing idle time during operation, a large area is unnecessarily large. When it is a configuration target, there is a problem that the time required for the configuration becomes long and the processing time is reduced.
そこで、本発明ではメモリ制御部3全体をパーシャルリコンフィギュレーション対象とはせずにメモリ制御部3の一部の回路であるアドレス生成部31のみパーシャルリコンフィギュレーション対象となるようにすることで、パーシャルリコンフィギュレーションに要する回路規模及びコンフィギュレーション時間を抑えることが可能になる。
Therefore, in the present invention, the entire memory control unit 3 is not subject to partial reconfiguration, but only the
アドレス生成部31は、パーシャルリコンフィギュレーション対象であって、読み出しアドレス生成部311及び読み出しアドレス生成部312か、予測ブロックアドレス生成部313及び予測ブロックアドレス生成部314かがコンフィギュレーション可能に構成されている。
The
図3は、アドレス生成部31に読み出しアドレス生成部311がコンフィギュレーションされているときのDRAM制御部32を示す。また図4は、アドレス生成部31に読み出しアドレス生成部312がコンフィギュレーションされているときのSRAM制御部33を示す。
FIG. 3 shows the
図3において、同期制御部321は、所定のフレームレートに基づいた同期信号が入力され、モード切替判定部2の判定結果に基づいて、DRAM41への書き込み要求を行うタイミングを示す制御信号を書き込みアドレス生成部324に供給する。また、DRAM41への読み出し要求を行うタイミングを示す制御信号を読み出しアドレス生成部311に供給する。モード切替判定部2の判定結果が通常モードの場合と補間モードの場合でDRAM41への書き込み要求を行うタイミングを示す制御信号及びDRAM41への読み出し要求を行うタイミングを示す制御信号の出力タイミングの違いについては後述する。
In FIG. 3, the
画像データ入力部322は、画像生成部1から入力されたフレーム画像が同期制御部321からの制御信号に基づいてDRAM41へ書き込まれるまでの期間、格納するものである。
The image
ベースアドレス生成部323は、同期制御部321からのDRAM41への書き込み要求または読み出し要求を行うタイミングを示す制御信号に基づいて、ベースアドレスを生成して書き込みアドレス生成部324及び読み出しアドレス生成部311へ出力する。モード切替判定部2の判定結果が画像生成部1からの出力が正常に出力されたと判定された場合は、ベースアドレスは、書き込むべきフレームの先頭アドレスに該当するベースアドレスを書き込みアドレス生成部324へ出力し、読み出すべきフレームの先頭アドレスに該当するベースアドレスを読み出しアドレス生成部311へ出力する。これは、1フレームにかかるDRAM41のアドレス範囲があらかじめ把握されることから、前回のフレームの先頭アドレス値に、1フレームにかかるDRAM41のアドレス範囲に対応する値を加算したアドレス値を生成することで実現できる。
The base
加算するアドレス値は、1フレームにかかるDRAM41のアドレス範囲そのものではなく、先頭アドレスを1フレームにかかるDRAM41のアドレス範囲よりも大きい固定値を用いて、DRAM41へのアクセスに都合のよい先頭アドレスに合わせるとしてもよい。
The address value to be added is not the address range itself of the
書き込みアドレス生成部324は、ベースアドレス生成部323からの書き込むべきフレームの先頭アドレスに該当するベースアドレスから順に1アドレスずつインクリメントすることでDRAM41への書き込みアドレスを生成してDRAMインターフェース部325へ出力する。
The write
読み出しアドレス生成部311は、ベースアドレス生成部323からの読み出すべきフレームの先頭アドレスに該当するベースアドレスから順に1アドレスずつインクリメントすることでDRAM41への読み出しアドレスを生成してDRAMインターフェース部325へ出力する。
The read address generation unit 311 generates a read address to the
DRAMインターフェース部325は、入力された書き込みアドレス生成部324からの書き込みアドレスに基づいて画像データ入力部322に格納されていたフレーム画像データをDRAM41へ書き込む。また、入力された読み出しアドレス生成部311からの読み出しアドレスに基づいてDRAM41からフレーム画像データを読み出して画像データ出力部326へ出力する。
The
画像データ出力部326は、SRAM制御部33へDRAMインターフェース部325が読み出したフレーム画像データを出力する。
The image
図4において、同期制御部331は、所定のフレームレートに基づいた同期信号が入力され、モード切替判定部2の判定結果に基づいて、SRAM42への書き込み要求を行うタイミングを示す制御信号を書き込みアドレス生成部334に供給する。また、SRAM42への読み出し要求を行うタイミングを示す制御信号を読み出しアドレス生成部312に供給する。モード切替判定部2の判定結果が通常モードの場合と補間モードの場合でSRAM42への書き込み要求を行うタイミングを示す制御信号及びSRAM42への読み出し要求を行うタイミングを示す制御信号の出力タイミングの違いについては後述する。
In FIG. 4, the
画像データ入力部332は、DRAM制御部32から入力されたフレーム画像が同期制御部331からの制御信号に基づいてSRAM42へ書き込まれるまでの期間、格納するものである。
The image
ベースアドレス生成部333は、同期制御部331からのSRAM42への書き込み要求または読み出し要求を行うタイミングを示す制御信号に基づいて、ベースアドレスを生成して書き込みアドレス生成部334及び読み出しアドレス生成部312へ出力する。モード切替判定部2の判定結果が画像生成部1からの出力が正常に出力されたと判定された場合は、ベースアドレスは、書き込むべきフレームの先頭アドレスに該当するベースアドレスを書き込みアドレス生成部334へ出力し、読み出すべきフレームの先頭アドレスに該当するベースアドレスを読み出しアドレス生成部312へ出力する。これは、1フレームにかかるSRAM42のアドレス範囲があらかじめ把握されることから、前回のフレームの先頭アドレス値に、1フレームにかかるSRAM42のアドレス範囲に対応する値を加算したアドレス値を生成することで実現できる。
The base address generation unit 333 generates a base address based on a control signal indicating the timing of performing a write request or read request to the
加算するアドレス値は、1フレームにかかるSRAM42のアドレス範囲そのものではなく、先頭アドレスを1フレームにかかるSRAM42のアドレス範囲よりも大きい固定値を用いて、SRAM42へのアクセスに都合のよい先頭アドレスに合わせるとしてもよい。
The address value to be added is not the address range of the
また、書き込みおよび読み出しのフレームの先頭アドレスは常に同じアドレスとすることで、1フレーム分のフレーム画像データを格納できる容量のSRAMを用いることができるので、コストの削減ができる。ただし、SRAM42への書き込みが読み込みを追い越さないようにアドレス制御を行なう必要があることはいうまでもない。
In addition, by always using the same start address for writing and reading frames, it is possible to use an SRAM having a capacity capable of storing frame image data for one frame, so that the cost can be reduced. However, it goes without saying that it is necessary to perform address control so that writing to the
書き込みアドレス生成部334は、ベースアドレス生成部333からの書き込むべきフレームの先頭アドレスに該当するベースアドレスから順に1アドレスずつインクリメントすることでSRAM42への書き込みアドレスを生成してSRAMインターフェース部335へ出力する。
The write
読み出しアドレス生成部312は、ベースアドレス生成部333からの読み出すべきフレームの先頭アドレスに該当するベースアドレスから順に1アドレスずつインクリメントすることでSRAM42への読み出しアドレスを生成してSRAMインターフェース部335へ出力する。
The read
SRAMインターフェース部335は、入力された書き込みアドレス生成部334からの書き込みアドレスに基づいて画像データ入力部332に格納されていたフレーム画像データをSRAM42へ書き込む。また、入力された読み出しアドレス生成部312からの読み出しアドレスに基づいてSRAM42からフレーム画像データを読み出して画像データ出力部336へ出力する。
The
画像データ出力部336は、画像処理部6へSRAMインターフェース部335が読み出したフレーム画像データを出力する。
The image
図5は、通常モード時の画像処理部6の出力を示す図である。この場合は、アドレス生成部31は、読み出しアドレス生成部311および読み出しアドレス生成部312がコンフィギュレーションされており、DRAM制御部32は図3に示す構成であり、SRAM制御部33は図4に示す構成である。
FIG. 5 is a diagram illustrating the output of the
図5の上段はDRAM制御部32の出力、中段はSRAM制御部33の出力、下段は画像処理部6の出力を時系列に示す。P1からP12はそれぞれフレーム画像を示し、P1をフレーム番号1、P12をフレーム番号12として説明する。
The upper part of FIG. 5 shows the output of the
モード切替判定部2の判定結果が画像生成部1からの出力P1〜P12について正常に出力されたと判定されている場合(通常モード時)は、画像生成部1から出力されるフレーム画像は正常に生成されていることから、画像処理部6では特に何も加工をすることなく所定のフレームレートを守って出力するのみである。また、SRAM制御部33は、読み出しをしながらDRAM制御部32からの次のフレーム画像の出力についてSRAM42に書き込むようにアドレス制御を行なって書き込むことで、次のフレーム画像を格納することができる。
When it is determined that the determination result of the mode
次に、モード切替判定部2の判定結果が画像生成部1からの出力が正常に出力されなかったと判定された場合(補間モード時)のメモリ制御部3について説明する。
Next, the memory control unit 3 when the determination result of the mode
モード切替判定部2の判定結果が画像生成部1からの出力が正常に出力されなかったと判定された場合、アドレス生成部31には、予測ブロックアドレス生成部313及び予測ブロックアドレス生成部314がコンフィギュレーションされる。
When the determination result of the mode
図6は、アドレス生成部31に予測ブロックアドレス生成部313がコンフィギュレーションされているときのDRAM制御部32を示す。また図7は、アドレス生成部31に予測ブロックアドレス生成部314がコンフィギュレーションされているときのSRAM制御部33を示す。ここで、図3及び図4に示す同期制御部321、画像データ入力部322、ベースアドレス生成部323、ベースアドレス生成部333、書き込みアドレス生成部324、DRAMインターフェース部325、画像データ出力部326、同期制御部331、画像データ入力部332、書き込みアドレス生成部334、SRAMインターフェース部335、及び画像データ出力部336については上述の機能、作用を持つものであるため、説明は省く。
FIG. 6 shows the
予測ブロックアドレス生成部313は、第1の期間(動きベクトル予測期間)で動きベクトル予測部5が動きベクトルを予測するためのフレーム画像データを供給するためのDRAM41への読み出しアドレスを生成する。その後、第2の期間で動きベクトル予測部5からの動きベクトル予測結果に基づいて、画像処理部6が補間フレームをを生成するためのフレーム画像データを供給するためのDRAM41への読み出しアドレスを生成する。
The prediction block
同様に、予測ブロックアドレス生成部314は、第1の期間(動きベクトル予測期間)で動きベクトル予測部5が動きベクトルを予測するためのフレーム画像データを供給するためのSRAM42への読み出しアドレスを生成する。その後、第2の期間で動きベクトル予測部5からの動きベクトル予測結果に基づいて、画像処理部6が補間フレームをを生成するためのフレーム画像データを供給するためのSRAM42への読み出しアドレスを生成する。
Similarly, the prediction block
図8は、モード切替判定部2の判定結果が画像生成部1からの第6フレーム(P6)が正常に出力されていないと判定されている場合のタイミングチャートを示す図である。図8では、時刻T1にモード切替判定部2から画像生成部1からの出力が正常に出力されていないことを示し、時刻T2にモード切替判定部2から画像生成部1からの出力が正常に出力されていることを示すモード切替判定指示信号が出力される。
FIG. 8 is a diagram illustrating a timing chart when the determination result of the mode
パーシャルリコンフィギュレーション制御部7は、モード切替判定部2からのモード切替判定指示信号を入力し、外部のコンフィギュレーション回路へアドレス生成部31へのパーシャルリコンフィギュレーションを制御する。外部のコンフィギュレーション回路は、アドレス生成部31の部分に対して読み出しアドレス生成部311及び読み出しアドレス生成部312のコンフィギュレーションデータと、予測ブロックアドレス生成部313及び予測ブロックアドレス生成部314のコンフィギュレーションデータとを格納している。
The partial
現在、アドレス生成部31に読み出しアドレス生成部311及び読み出しアドレス生成部312がコンフィギュレーションされている状態で、モード切替判定指示信号が補間モードを示す(図8ではHレベル)場合は、外部のコンフィギュレーション回路へアドレス生成部31に予測ブロックアドレス生成部313及び予測ブロックアドレス生成部314をコンフィギュレーションする指示を行なう。通常モードを示す場合は何も行なわない。
When the read address generation unit 311 and the read
一方、現在、アドレス生成部31に予測ブロックアドレス生成部313及び予測ブロックアドレス生成部314がコンフィギュレーションされている状態で、モード切替判定指示信号が通常モードを示す(図8ではLレベル)場合は、外部のコンフィギュレーション回路へアドレス生成部31に読み出しアドレス生成部311及び読み出しアドレス生成部312をコンフィギュレーションする指示を行なう。補間モードを示す場合は何も行なわない。
On the other hand, when the prediction block
図8では、時刻T1からアドレス生成部31に予測ブロックアドレス生成部313及び予測ブロックアドレス生成部314をパーシャルリコンフィギュレーションされ、時刻T2からアドレス生成部31に読み出しアドレス生成部311及び読み出しアドレス生成部312をパーシャルリコンフィギュレーションされる。つまり、時刻T1からパーシャルリコンフィギュレーションにかかる時間経過後にアドレス生成部31に予測ブロックアドレス生成部313及び予測ブロックアドレス生成部314が構成される。
In FIG. 8, the prediction block
このときメモリ制御部3からは、第1の期間(動きベクトル予測期間)で動きベクトル予測部5が動きベクトルを予測するためのフレーム画像データを供給するために、DRAM41からは第7フレーム(P7)のフレーム画像データが供給され、SRAM42からは第5フレーム(P5)のフレーム画像データが供給される。
At this time, since the memory control unit 3 supplies frame image data for the motion
その後、第1の期間で動きベクトル予測部5が予測した動きベクトル予測結果に基づいて、第2の期間で画像処理部6が補間フレームをを生成するためのフレーム画像データを供給するために、DRAM41からは第7フレーム(P7)のフレーム画像データが供給され、SRAM42からは第5フレーム(P5)のフレーム画像データが供給される。
Thereafter, based on the motion vector prediction result predicted by the motion
次に、MPEG(Moving Picture Experts Group)等で用いられる動きベクトル予測の一般的な方法であるブロックマッチング法と呼ばれるアルゴリズムを用いた場合の動きベクトル予測部5の動作を説明する。
Next, the operation of the motion
図9は、動きベクトル予測の方法を示す図でああって、第6フレームの前後となる第5フレーム及び第7フレームとからブロックマッチング法を用いて第6フレームの動きベクトルを予測する。図9では、1フレームを例えば16×16画素のブロック(以下、単にブロックと呼ぶ)に分割する。ここでは分割されたブロック(B61〜B69)のうち、ブロックB65に対する動きベクトルを求める。ここでは動きベクトル予測の対象となる第6フレームをP6’とする。 FIG. 9 is a diagram showing a motion vector prediction method. In other words, the motion vector of the sixth frame is predicted using the block matching method from the fifth frame and the seventh frame that are before and after the sixth frame. In FIG. 9, one frame is divided into, for example, blocks of 16 × 16 pixels (hereinafter simply referred to as blocks). Here, a motion vector for the block B65 among the divided blocks (B61 to B69) is obtained. Here, the sixth frame that is the target of motion vector prediction is P6 '.
SRAM42内にある前フレームP5とDRAM41内にある次フレームP7に対して破線で表した範囲をB65に対する検索範囲とする。まず、図9(a)に示すように、P5側の対象ブロックを前フレームP5の破線領域の左上のブロックとし、そのP5側の対象ブロックとB65で点対称となる位置関係にある次フレームP7の破線領域の右下のブロックをP7側の対象ブロックとして、それぞれの対象ブロックについて画像データの相関を取る。
A range indicated by a broken line with respect to the previous frame P5 in the
次に図9(b)に示すように、P5側の対象ブロックを1画素分右に移動したブロックとし、そのP5側の対象ブロックとB65で点対称となる位置関係にある次フレームP7の破線領域のブロックをP7側の対象ブロックとして、それぞれの対象ブロックについて画像データの相関を取る。 Next, as shown in FIG. 9B, the target block on the P5 side is a block moved to the right by one pixel, and the broken line of the next frame P7 that is in point symmetry with the target block on the P5 side at B65 The block of the area is set as the target block on the P7 side, and the correlation of the image data is taken for each target block.
このように対象ブロックをそれぞれ1画素ずつずらしながら破線で表した範囲の対象ブロックの組み合わせ全てについて画像データの相関を取る。図9(c)は破線で表した範囲の中心を対象ブロックとした位置関係であり、図9(d)は、組み合わせ候補最後の位置関係を示す。このようにして破線領域について求めた全ての相関値の中で最大の相関値を持った位置関係にある2つのブロック間の移動量をブロックB65に対する動きベクトルとする。 In this way, the image data is correlated for all combinations of the target blocks in the range indicated by the broken line while shifting the target blocks by one pixel. FIG. 9C shows the positional relationship with the center of the range represented by the broken line as the target block, and FIG. 9D shows the final positional relationship of the combination candidates. A movement amount between two blocks having a positional relationship having the maximum correlation value among all correlation values obtained for the broken line area in this way is set as a motion vector for the block B65.
これをP6’上の全てのブロック(B61〜B69)に対して行うことにより、全てのブロックに対する動きベクトルを求めることでP6’の動きベクトルを予測することができる。 By performing this for all the blocks (B61 to B69) on P6 ', the motion vector of P6' can be predicted by obtaining the motion vectors for all the blocks.
このように、第1の期間においては、予測ブロックアドレス生成部313は、動きベクトル予測部5で各ブロックの相関を求めるためのブロックごとの画素データを動きベクトル予測部5に入力するためのDRAM41へのアドレスを生成してDRAMインターフェース部325に出力する。同じように、第1の期間で予測ブロックアドレス生成部314は、動きベクトル予測部5で各ブロックの相関を求めるための(予測ブロックアドレス生成部313と対象ブロックの点対称となる位置関係となる)ブロックごとの画素データを動きベクトル予測部5に入力するためのSRAM42へのアドレスを生成してSRAMインターフェース部335に出力する。
As described above, in the first period, the prediction block
次に第2の期間におけるアドレスの生成方針を説明する。例えばフレームの水平軸方向をx軸、垂直方向をy軸として、求まった動きベクトルの値を(Δx、Δy)、補間フレームP6’上のブロックの座標を(x、y)とすると、前フレームP5上のブロックの座標(x−Δx/2、y−Δy/2)と次フレームP7上のブロックの座標(x+Δx/2、y+Δy/2)とが補間フレーム生成に必要な2つのブロックの座標となる。このように予測された動きベクトルに基づいてそれぞれの読み出しアドレスをベースとなるアドレスからずらしたアドレスに変換して読み出すことで、画像生成部6へそれぞれ前フレームと次フレームとの補間フレーム生成に必要な画素情報を入力させることができる。
Next, an address generation policy in the second period will be described. For example, if the horizontal axis direction of the frame is the x axis, the vertical direction is the y axis, the value of the obtained motion vector is (Δx, Δy), and the coordinates of the block on the interpolation frame P6 ′ are (x, y), the previous frame The coordinates of the block on P5 (x−Δx / 2, y−Δy / 2) and the coordinates of the block on the next frame P7 (x + Δx / 2, y + Δy / 2) are the coordinates of the two blocks necessary for generating the interpolation frame. It becomes. Necessary for generating an interpolated frame of the previous frame and the next frame to the
図10は、第6フレーム(P6)は補間モード時の画像処理部6の出力を示す図である。図10の上段はDRAM制御部32の出力、中段はSRAM制御部33の出力、下段は画像処理部6の出力を時系列に示す。上述のように第6フレームを補間するときは、それぞれDRAM制御部32及びSRAM制御部33から補間対象のフレーム前後のフレーム画像データが出力され、画像処理部6は、補間モード時は得られたそれぞれのフレーム画像データを単純に平均化を行なうことで補間フレームを生成することができる。
FIG. 10 is a diagram illustrating the output of the
図11は、この発明の画像処理部6における入力に対する補間処理を示す図である。図11(A)は、第5フレーム(P5)から第7フレーム(P7)まで欠落のない通常モードの画像でフレームの左下から右下まで3フレーム内で1台の自動車が走る動画像を示す。
FIG. 11 is a diagram showing an interpolation process for an input in the
図11(B)は、第6フレームについてモード切替判定部2が画像生成部1からの出力が正常に出力されなかったと判定していたときに、補間モード用のパーシャルリコンフィギュレーションがなされなかった場合を示す。この場合はそのまま第5フレーム(P5)と第7フレーム(P7)が読み出されても単純な平均化を行なう画像処理部6では自動車が2台現れることとなる。
FIG. 11B shows that the partial reconfiguration for the interpolation mode was not performed when the mode
図11(C)は、第6フレームについてモード切替判定部2が画像生成部1からの出力が正常に出力されなかったと判定していたときに、補間モード用のパーシャルリコンフィギュレーションがなされている場合を示す。この場合は上述のようにP5とP7とのフレーム画像の読み出しが単純な平均化で補正が可能になるように行なわれるので補間フレームP6’は図11(A)のP6に近いフレーム画像を得ることができる。
In FIG. 11C, the partial reconfiguration for the interpolation mode is performed when the mode
なお、第2の期間は、指定された所定のフレームレートでの出力をするために指定された所定のフレームレートに基づいたレートでの読み出しとなるが、第1の期間は指定された所定のフレームレートに限定されるものではなく、高速に読み出して動きベクトル予測部5に出力することで読み出しの期間短縮を行なっても構わない。
In the second period, reading is performed at a rate based on a predetermined frame rate specified for output at a specified predetermined frame rate. However, the first period is a specified predetermined frame rate. It is not limited to the frame rate, and the reading period may be shortened by reading at high speed and outputting it to the motion
また、例えば第6フレームを補間するときに、SRAM制御部33がDRAM制御部32からの第7フレームのフレーム画像データを書き込む場合は、SRAM制御部33は動きベクトルを得ているのでDRAM制御部32からの第7フレームのフレーム画像データが基準からどれだけずらして読み出しているかを把握しているため、ずれた分を補正してSRAM42へ書き込む。第7フレームのフレーム画像データの不足分、つまり第2の期間に第7フレームをずらして読み出したことによって第2の期間に読み出されなかった部分については、DRAM制御部32が第2の期間後に読み出してSRAM制御部33がそれをSRAM42へ書き込むことで第2の期間後に全てのフレーム画像データを改めてDRAM41から読み出す必要が不要になる。
For example, when the
以上、上述したように、実施の形態1に係る画像処理装置によれば、DRAM制御部32及びSRAM制御部33の一部分に対してパーシャルリコンフィギュレーションを行うことにより、読み出しアドレス生成部311及び読み出しアドレス生成部312と、予測ブロックアドレス生成部313及び予測ブロックアドレス生成部314とを同時に持つことが無いため回路規模を抑えることが出来る。特に、回路規模容量が限られたデバイスで実現する場合に、そのデバイスの持つ回路規模容量に対する使用率が高い場合には少しでも回路規模を抑える必要があるため、このような複数のモードで動作する際に排他的に動作する一部の回路をパーシャルリコンフィギュレーションを用いて自動的に制御できることは製造コストを抑えることができるという大きな効果を奏する。
As described above, according to the image processing apparatus according to the first embodiment, by performing partial reconfiguration on a part of the
また、動画像の品質改善の効果を得るために動作の切り替えが必要な機能ブロックのうち、最小限の機能ブロックであるアドレス生成部31のみをパーシャルリコンフィギュレーション対象とすることで、パーシャルリコンフィギュレーションに要する時間を抑えることができる。
In addition, among the functional blocks that need to be switched in order to obtain the effect of improving the quality of moving images, only the
さらに、図8から図10に示す図を用いた説明では補間モードのフレームが第6フレームの1つであったが、例えば連続して第7フレームも補間モードとなった場合は、相関を取るための対象となる次フレームを第8フレーム(P8)として第5フレーム(P5)と動きベクトルを求め、第6フレーム及び第7フレームのそれぞれの動きベクトルに基づいて第2の期間にDRAM制御部32からP8を、SRAM制御部33からP5を出力して補間することで連続して補間が必要となっても対応できることは言うまでもない。
Furthermore, in the description using the diagrams shown in FIGS. 8 to 10, the frame in the interpolation mode is one of the sixth frames. However, for example, when the seventh frame is also in the interpolation mode, the correlation is taken. The fifth frame (P5) and the motion vector are obtained by setting the next frame to be processed as the eighth frame (P8), and the DRAM control unit in the second period based on the respective motion vectors of the sixth frame and the seventh frame Needless to say, by interpolating by outputting P8 from 32 and P5 from the
1 画像生成部
2 モード切替判定部
3 メモリ制御部
4 メモリ
5 動きベクトル予測部
6 画像処理部
7 パーシャルリコンフィギュレーション制御部
DESCRIPTION OF
Claims (6)
前記フレーム画像の動作モードを判定するモード切替判定部と、
前記フレーム画像をメモリに書き込みまたは読み出すメモリ制御部と、
前記動作モードに基づいて前記メモリ制御部が前記メモリから読み出した前記フレーム画像に画像処理を行い出力する画像処理部と、
前記メモリ制御部の回路のうち一部をパーシャルリコンフィギュレーション可能に制御するパーシャルリコンフィギュレーション制御部とを備え、
前記メモリ制御部は、パーシャルリコンフィギュレーション可能なプログラマブルロジックデバイスを用いて成るものであって、
前記パーシャルリコンフィギュレーション制御部は、前記動作モードに基づいて前記メモリ制御部の回路のうち一部をコンフィギュレーションする
ことを特徴とする画像処理装置。 An image generation unit that generates and outputs a frame image;
A mode switching determination unit for determining an operation mode of the frame image;
A memory control unit for writing or reading the frame image into a memory;
An image processing unit that performs image processing on the frame image read from the memory by the memory control unit based on the operation mode;
A partial reconfiguration control unit that controls a part of the circuit of the memory control unit so as to enable partial reconfiguration;
The memory control unit is configured using a programmable logic device capable of partial reconfiguration,
The partial reconfiguration control unit configures a part of the circuit of the memory control unit based on the operation mode.
前記画像処理部は、前記モード切替判定部が通常モードと判断したときは、前記メモリ制御部から読み出された前記フレーム画像を選択して出力し、補間モードと判断したときは、前記メモリ制御部から読み出された複数の前記フレーム画像から補間フレームを生成して出力する
ことを特徴とする請求項1に記載の画像処理装置。 When the frame image generated by the image processing unit is output in a predetermined frame period or when a correctly decoded frame image is output, the mode switching determination unit is When the operation mode is determined to have been normally output and the operation mode is set to the normal mode, and a new frame image is not output during the predetermined frame period or a correctly decoded frame image is not output. , It is determined that the output from the image generation unit was not normally output, the operation mode is a normal mode, the operation mode is an interpolation mode,
The image processing unit selects and outputs the frame image read from the memory control unit when the mode switching determination unit determines that the normal mode is selected. The image processing apparatus according to claim 1, wherein an interpolation frame is generated from the plurality of frame images read out from the unit and output.
前記パーシャルリコンフィギュレーション制御部は、前記モード切替判定部が通常モードと判断したときは、前記メモリ制御部に前記読み出しアドレス生成手段がコンフィグレーションされるようにパーシャルリコンフィギュレーションを制御し、補間モードと判断したときは、前記メモリ制御部に前記予測ブロックアドレス生成手段がコンフィグレーションされるようにパーシャルリコンフィギュレーションを制御する
ことを特徴とする請求項2に記載の画像処理装置。 The memory control unit includes a read address generation unit that generates a read address of a read target frame and a prediction block address generation unit that generates read addresses of a plurality of frames before and after the read target frame. It can be switched by the part,
The partial reconfiguration control unit controls the partial reconfiguration so that the read address generation unit is configured in the memory control unit when the mode switching determination unit determines that the normal mode is selected, and the interpolation mode 3. The image processing apparatus according to claim 2, wherein when it is determined, partial reconfiguration is controlled so that the prediction block address generation unit is configured in the memory control unit.
前記メモリ制御部は、前記第1のメモリから読み出した前記フレーム画像を前記第2のメモリに書き込み、前記モード切替判定部が通常モードと判断したときは、前記読み出しアドレス生成手段が生成した第2のメモリに対する読み出しアドレスに基づき前記第2のメモリから読み出した前記フレーム画像を読み出し対象フレームとして出力し、前記モード切替判定部が補間モードと判断したときは、前記予測ブロックアドレス生成手段が生成した第1のメモリに対する読み出しアドレスと第2のメモリに対する読み出しアドレスとに基づき前記第1のメモリから読み出した前記フレーム画像と前記第2のメモリから読み出した前記フレーム画像とを前記読み出し対象フレームの前後にあたる複数のフレームとして出力する
ことを特徴とする請求項3に記載の画像処理装置。 The memory is composed of a first memory and a second memory,
The memory control unit writes the frame image read from the first memory to the second memory. When the mode switching determination unit determines that the normal mode is selected, the memory control unit generates a second image generated by the read address generation unit. The frame image read from the second memory based on the read address for the second memory is output as a read target frame, and when the mode switching determination unit determines the interpolation mode, the prediction block address generation unit generates A plurality of frame images read from the first memory and frame images read from the second memory based on a read address for one memory and a read address for a second memory, before and after the read target frame It is output as a frame of The image processing apparatus according to Motomeko 3.
前記予測ブロックアドレス生成手段は、前記動きベクトル予測部が予測した前記画素ブロックに基づいて、前記画像処理部へ出力するための第1のメモリへの読み出しアドレス及び第2のメモリへの読み出しアドレスを生成する
ことを特徴とする請求項4に記載の画像処理装置。 A motion vector prediction unit that performs a motion vector prediction from the frame image between successive frames generated by the image generation unit and predicts a pixel block used for interpolation;
The predicted block address generation means generates a read address to the first memory and a read address to the second memory for output to the image processing unit based on the pixel block predicted by the motion vector prediction unit. The image processing apparatus according to claim 4, wherein the image processing apparatus is generated.
前記第2のメモリは、SRAM(Static Random Access Memory)であることを特徴とする請求項4または請求項5に記載の画像処理装置。 The first memory is a DRAM (Dynamic Random Access Memory),
The image processing apparatus according to claim 4, wherein the second memory is an SRAM (Static Random Access Memory).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013034828A JP2014165651A (en) | 2013-02-25 | 2013-02-25 | Image processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013034828A JP2014165651A (en) | 2013-02-25 | 2013-02-25 | Image processing device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014165651A true JP2014165651A (en) | 2014-09-08 |
Family
ID=51615898
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013034828A Pending JP2014165651A (en) | 2013-02-25 | 2013-02-25 | Image processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014165651A (en) |
-
2013
- 2013-02-25 JP JP2013034828A patent/JP2014165651A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8279919B2 (en) | Image processing apparatus | |
US8451901B2 (en) | High-speed motion estimation apparatus and method | |
US20150301585A1 (en) | Data processing method, data processing apparatus, and storage medium | |
JP2011035655A (en) | Frame rate conversion apparatus and display apparatus equipped therewith | |
JP2015195572A (en) | Content processing device and content processing method | |
WO2011118199A1 (en) | Display switching device | |
US20080002052A1 (en) | Moving image frame rate converting apparatus and moving image frame rate converting method | |
JP2014165651A (en) | Image processing device | |
Wang et al. | Motion compensation architecture for 8K UHDTV HEVC decoder | |
JP6448189B2 (en) | Video processing device | |
US20170046069A1 (en) | Semiconductor device | |
JP2014138242A (en) | Image processing device and image processing method | |
US9277168B2 (en) | Subframe level latency de-interlacing method and apparatus | |
JP4213750B2 (en) | Array type arithmetic unit | |
JP5841743B2 (en) | Image processing device | |
JP7317630B2 (en) | Image processing device, image processing method, and program | |
JP2007094391A (en) | Moving image display apparatus | |
JP2011035656A (en) | Interpolation frame generator and display device mounted by the same | |
JP2014195169A (en) | Image processing unit | |
JP2013186264A (en) | Image display device and image display method | |
US20140164691A1 (en) | Memory architecture for display device and control method thereof | |
JP2007329858A (en) | Moving image display apparatus, moving image display method, and program | |
JP2005062693A (en) | Memory controller and memory control method, program for implementing same method, rate converting device, and image signal processing apparatus | |
JP2012235419A (en) | Video signal processing apparatus and video signal processing method | |
JP2011216935A (en) | Video processing device and video display device |