JP2015095733A - 画像伝送装置、画像伝送方法、及びプログラム - Google Patents

画像伝送装置、画像伝送方法、及びプログラム Download PDF

Info

Publication number
JP2015095733A
JP2015095733A JP2013233494A JP2013233494A JP2015095733A JP 2015095733 A JP2015095733 A JP 2015095733A JP 2013233494 A JP2013233494 A JP 2013233494A JP 2013233494 A JP2013233494 A JP 2013233494A JP 2015095733 A JP2015095733 A JP 2015095733A
Authority
JP
Japan
Prior art keywords
tile
transmission
encoded
unit
data
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
JP2013233494A
Other languages
English (en)
Other versions
JP2015095733A5 (ja
Inventor
毅 小澤
Takeshi Ozawa
毅 小澤
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 JP2013233494A priority Critical patent/JP2015095733A/ja
Priority to US14/536,495 priority patent/US20150131715A1/en
Publication of JP2015095733A publication Critical patent/JP2015095733A/ja
Publication of JP2015095733A5 publication Critical patent/JP2015095733A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks

Abstract

【課題】 従来の動画のストリーム伝送では、送信装置側で送信処理が滞る場合に、フレーム送信スキップ及びGOP単位の送信スキップを行うため、動画の送信が停止する時間が長いという課題があった。【解決手段】 画像伝送装置であって、画像を符号化ブロック単位で符号化する符号化手段と、前記符号化手段によって符号化された画像の符号化データを送信する送信手段と、送信バッファの空き容量に関する情報を取得する第1の取得手段と、前記符号化ブロックを複数含む領域であって、前記符号化手段によって前記領域単位で並行処理が可能な領域であるタイルの優先度を取得する第2の取得手段と、前記第1の取得手段によって取得された前記送信バッファの空き容量に関する情報と、前記第2の取得手段によって取得された処理対象のタイルの優先度とに基づいて、前記処理対象のタイルに対応するデータを送信するよう前記送信手段を制御する制御手段とを有する。【選択図】 図5

Description

本発明は、画像データをタイル単位で分割してネットワークを介した伝送を行う画像伝送装置、画像伝送方法、及びプログラムに関する。
近年、インターネット等のネットワークに動画データをリアルタイムにストリーム伝送する技術が知られており、このような技術は、例えばTV会議システムや監視カメラシステム等で用いられている。
ストリーム伝送される動画は圧縮符号化(以下、符号化と称す)されてから伝送されるが、代表的な動画符号化方式としてH.264/MPEG−4 AVC(以下、H.264と称す)が知られている。H.264を始めとした動画符号化方式では、所謂フレーム間予測を用いて符号化を行う。そして、動画をフレーム間予測を用いて符号化することにより生成された符号化データは、一つのフレームデータのみで該フレームデータを復号可能な所謂キーフレームと、別フレームデータを参照することでフレームデータを復号可能なフレームとで構成される。ここで、キーフレームから次のキーフレームのひとつ前のフレームまでのフレーム群は、まとめてGOP(Group of Pictures)と呼ばれる。
また、近年、JCT−VC(Joint Collaborative Team on Video Coding)では、H.264の後継としてHEVC(High Efficiency Video Coding)の標準化が進められている。HEVCではH.264と同様に、フレーム間予測を用いて符号化を行うことができる。そして、HEVCではH.264と異なる要素の一つとして、符号化する動画の1フレームを空間的に格子状の領域に分割して符号化・復号の並列処理等を可能にする、tile(タイル)と呼ばれる手法がある(非特許文献1)。タイルを用いることによって、符号化・復号の並列処理による高速化を実現することが可能である。また、タイル単位の符号化を用いることで所謂ROI(Region Of Interest)の機能を動画符号化方式に組み込むことができる。また、タイル技術は、JPEG2000符号化方式でも採用されているが、JPEG2000符号化方式のタイルには、一部のタイルだけを復号してROIとする方法については記載されていない。
一方、従来、リアルタイムな動画のストリーム伝送では、ストリーム伝送プロトコルとしてRTSP/RTP(Real Time Streaming Protcol/Real−time Transport Protocol)が用いられている。該RTSP/RTP等を用いた動画のストリーム伝送では、ネットワークの輻輳や、送信装置による符号化処理負荷、受信装置による復号処理負荷の増加を抑制し、カメラによる撮像から受信装置が再生するまでの遅延を抑制することが要求される。
そして、従来よりも多画素の画像(動画)をHEVC等の符号化方式を用いて符号化し、符号化された動画データをRTSP/RTPを用いてリアルタイムにストリーム伝送する場合、動画の復号処理の負荷は従来よりも大きくなる。即ち、復号処理が高負荷となることで、復号処理とストリームの受信が符号化データの伝送速度に間に合わない可能性がある。そして、このように復号処理が高負荷となる場合、結果としてストリーム伝送が滞ることとなる。
さらに、ストリーム伝送の滞りが発生する例について説明する。ストリーム伝送の滞りは、通信プロトコル(通信方式)としてUDP(User Datagram Protocol)よりもTCP(Transmission Control Protocol)を用いた通信で発生し易い。尚、TCPを用いるストリーム伝送プロトコルの例としては、RTSP/RTP over TCPが挙げられる。TCPを用いたストリーム伝送において、受信装置側でパケット受信が遅延すると、パケット受信が成功したことを知らせるためのACKパケットの返信も遅延し、送信装置側では該ACKパケットの受信を待機し続けるために、次のパケット送信も遅延する。このように、送信装置側のパケット送信の遅延が蓄積することにより該送信装置の送信パケットバッファが満杯(又はバッファの空き容量が所定数以下)になると、新たなパケット送信処理が一時的に不可能(送信失敗)となる。このような送信装置側でのパケット送信の失敗は、ストリーム伝送の滞りが発生する原因となる。
従来、送信装置側でパケット送信が失敗した場合、ストリーム伝送処理の滞りを抑制するために、該パケットを含む送信対象のフレームデータの送信をスキップする処理(以下、フレーム送信スキップと称す)を行う方法が用いられていた(非特許文献2)。
JCT−VC 寄書 JCTVC−D227 インターネット<http://phoenix.it−sudparis.eu/jct/doc_end_user/current_document.php?id=1664> JCT−VC 寄書 JCTVC−J0057 インターネット<http://phoenix.it−sudparis.eu/jct/doc_end_user/current_document.php?id=5920>
上述した従来の方法においてフレーム送信スキップを行う場合、スキップされたフレームデータの一部は送信装置側から送信されない。このため、該フレームデータのその他の一部を受信した受信装置は、該フレームデータを再生することができず、動画が途切れてしまうことがある。また、スキップされるフレームデータがフレーム内予測を用いて符号化されたデータであれば、送信装置はスキップされるフレームデータを含むGOP単位でデータの送信をスキップする処理(以下、GOP送信スキップと称す)を行うことになる。このように、GOP送信スキップを行うと、当該GOP送信スキップを行ってから次のGOPが生成されるまで動画の送信が停止されてしまい、動画が途切れてしまう時間はフレーム送信スキップを行った場合よりも長くなる。
従って、従来のリアルタイムな動画のストリーミング伝送では、送信装置側でストリーム送信処理が滞る場合に、フレーム送信スキップ又はGOP送信スキップを用いると動画の停止時間が長くなってしまうという課題がある。
本発明は上記の課題を鑑みて提案されたものであり、本発明は送信装置によりタイル単位でデータの送信をスキップすることで、受信装置側で動画の再生時に発生するフレーム単位及びGOP単位の動画再生の途切れを抑制することを目的とする。
上記の課題を解決するために、本発明の画像伝送装置は、下記の構成を有する。即ち、送信バッファに蓄積された画像を伝送する画像伝送装置であって、前記画像を符号化ブロック単位で符号化する符号化手段と、前記符号化手段によって符号化された画像の符号化データを送信する送信手段と、前記送信バッファの空き容量に関する情報を取得する第1の取得手段と、前記符号化ブロックを複数含む領域であって、前記符号化手段によって前記領域単位で並行処理が可能な領域であるタイルの優先度を取得する第2の取得手段と、前記第1の取得手段によって取得された前記送信バッファの空き容量に関する情報と、前記第2の取得手段によって取得された処理対象のタイルの優先度とに基づいて、前記処理対象のタイルに対応するデータを送信するよう前記送信手段を制御する制御手段とを有する。
本発明により、送信装置によりタイル単位でデータの送信をスキップすることができる。即ち、スキップするタイルが含まれるフレーム内の、当該スキップするタイル以外のタイルは送信することができるため、優先度が高いタイル部分の動画を連続フレームとして送信することが可能である。このため、受信装置側で動画を再生したときに発生する動画再生の途切れを抑制することができる。
本発明の各実施形態に係る、送信装置と受信装置との接続状態を示す図 実施形態1に係る、ネットワークカメラ101(画像伝送装置)の構成を示すブロック図 動画フレームのタイル分割と各タイルの優先度とを示す図 実施形態1に係る、送信バッファ206の空き容量と各タイルに設定された優先度とに応じたタイルデータ送信処理のフロー図 実施形態1に係る、選択的タイル送信処理の詳細フロー図 実施形態2に係る、選択的タイル送信処理の詳細フロー図 実施形態3に係る、選択的タイル送信処理の詳細フロー図 実施形態4に係る、選択的タイル送信処理の詳細フロー図 実施形態4に係る、選択的タイル送信処理の別の例の詳細フロー図 実施形態4に係る、送信バッファ206の空き容量と各タイルに設定された優先度とに応じたタイルデータの送信処理のフロー図 本発明の画像伝送装置に適用可能なコンピュータのハードウェア構成例
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。尚、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
また、以下の実施形態では、タイル形式で処理が可能なHEVCを用いて動画データを符号化する符号化部を備えるネットワークカメラが、動画を再生可能な複数のクライアントにリアルタイムにストリーム配信を行っている状況について説明する。尚、以下の実施形態におけるネットワークカメラに備わっている符号化部は、動画データ(画像)を符号化ブロック単位で符号化するものとする。また、タイルは符号化ブロックを複数含む領域のことであり、タイル形式で処理が可能であるということはこの領域単位で並行処理が可能であることを示す。また、以下の実施形態では、通信プロトコルとしてTCPを使用した例を説明する。
尚、ネットワークカメラとクライアントとの間のネットワーク接続、配信メディア情報のやり取り、ストリーム送信の開始処理、停止処理については従来方法と同様であるので説明を行わない。
<実施形態1>
本実施形態では、動画ストリームをTCPで伝送するRTSP/RTP over TCPをストリーム伝送のプロトコルとして用いる。以下、受信装置において多画素動画データの復号処理が高負荷であるために、パケット受信とTCPにおけるACKパケットの返信の処理に遅延が発生し、送信装置内の送信バッファの空き容量が所定数以下になった場合における送信装置の処理について説明する。
本実施形態のシステム全体の処理について、図1を用いて説明する。図1は、本実施形態に係る、ネットワークカメラ(送信装置)101と各クライアント(受信装置)103〜105との接続形態の一例を示す図である。本実施形態において、送信装置であるネットワークカメラ101は、ネットワーク102を介して、受信装置である各クライアント103〜105とそれぞれ接続される。尚、本実施形態における図1には、クライアントが3個としたが、クライアントの数は3個に限定されない。
図2は、本実施形態の送信装置であるネットワークカメラ101の機能構成を示すブロック図である。撮像部201は動画を撮影してビットマップデータを生成し、生成したビットマップデータを符号化部202に出力する。符号化部202は、撮像部201から出力されたビットマップデータをHEVCを用いて符号化ブロック単位で符号化し、符号化したデータを符号化フレームデータとしてフレームバッファ203へ出力する。フレームバッファ203は、符号化部202から出力された符号化フレームデータを格納する。オブジェクト解析部204は、ビットマップデータと符号化部202による符号化の際に出力される動きベクトルとに基づいて動画内のオブジェクト解析(オブジェクト認識)を行い、フレーム毎にオブジェクトの位置に応じて各タイルの優先度の判定を行う。
ストリーム送信部205は、フレームバッファ203に格納された符号化フレームデータをRTP/TCPパケットに変換し、送信バッファ206へ出力する。更に、ストリーム送信部205は、送信バッファ206の空き容量とタイルの優先度とに基づいて、選択的に各タイルの符号化タイルデータ(各タイルに対応するデータ)の送信処理(以下、選択的タイル送信処理と称す)を行う。詳細は後述する。また、ストリーム送信部205は、指定したタイルのフレーム内予測を用いた再符号化、及び次のフレームにおける該指定したタイルのフレーム内予測を用いた符号化を、符号化部202に指示する機能を有する。更に、ストリーム送信部205は、タイルの優先度状況、及び符号化タイルデータの送信状況を、タイル情報として一時保存するためにタイル情報格納部208へ出力する。尚、本実施形態において符号化タイルデータとは、符号化フレームデータをタイル毎に分割したデータのことである。
送信バッファ206は、送信先であるクライアント(受信装置)毎にパケットを格納するためのキュー(以下、パケットキューと称す)で構成される。通信部207は、送信バッファ206を監視し、送信パケットが格納されているとネットワーク102を介して該当する送信先の各クライアント103〜105へそれぞれ送信する。また、通信部207はTCPの仕様に従い、送信先の各クライアント103〜105からのACKパケットの受信を待って該送信先のパケットキューにおける次のパケットを送信する。
次に、図3について説明する。図3(a)及び図3(c)は、ビットマップデータの1フレームにおけるタイル分割の模式図である。本実施形態において、ビットマップデータの1フレームは縦横それぞれに4分割され、全部で16個のタイルに分割される。例えば、図3(a)においてT1〜T16は各タイルを示す指示子であり、オブジェクト解析部204によるオブジェクト解析に基づいて、各タイルT6、T7、T10、T11の部分に人が映っていると認識している状態を表している。
また、図3(b)及び図3(d)は、ビットマップデータの1フレームにおいて、オブジェクト解析部204によって各タイルに割り当てられた優先度を示す。例えば、図3(b)は、図3(a)に示すようなオブジェクト解析部204によるオブジェクト解析の結果に基づいて、各タイルに優先度P0〜P2を割り当てることを示す。図3(b)において、図3(a)で人が認識された各タイルT6、T7、T10、T11に、高い優先度P2が割り当てられている。尚、本実施形態では、図3(a)及び図3(c)において人が認識されたタイルに高い優先度P2が割り当てられているが、本発明はこれに限定されない。即ち、オブジェクト解析の結果によって物が認識されたタイルや、予め設定された位置にあるタイルに高い優先度P2が割り当てられていてもよい。また、各クライアント103〜105がタイルの優先度を指示することにより決定してもよい。
また、図3(e)は各タイルの符号化タイルデータが、各クライアント(受信装置)へ送信されているか否かを示す送信情報を管理するためのテーブルの例を示す。図3(e)に示すテーブルは、クライアント毎に各タイルの符号化タイルデータが送信されているか否かの状況を示す。また、図3(e)に示すテーブルにおいて、符号化タイルデータが送信されている場合は1と記録され、送信されていないと0と記録されるとする。尚、図3(e)において符号化タイルデータが送信されているタイル(1)を送信タイルと称し、符号化タイルデータが送信されていないタイル(0)を非送信タイルと称す。即ち、図3(e)において、クライアント103に対しては各タイルT6、T7の符号化タイルデータが送信されており、クライアント104に対してはすべてのタイルの符号化タイルデータが送信されていることが示されている。
上記図3(b)及び図3(d)に示す各タイルの優先度、及び図3(e)に示す各タイルの符号化タイルデータの送信状況に関する情報は、ストリーム送信部205によってタイル情報格納部208へ出力され、タイル情報格納部208で記録及び管理される。
次に、ストリーム送信部205による選択的タイル送信処理の手順について図4及び図5を参照して説明する。
まず、図4について説明する。ステップS401においてストリーム送信部205は、符号化部202によって出力された符号化フレームデータをフレームバッファ203から取得する。次に、ステップS402においてストリーム送信部205は、該符号化フレームデータを解析することによりフレーム内のタイルの個数、各タイルの座標、及び各タイルのデータサイズ(データ量)を示す情報を含むタイル構成情報を取得する。尚、本実施形態において、タイル構成情報にはフレーム内のタイルの個数、各タイルの座標、及び各タイルのデータサイズを示す情報が含まれるが、本発明はこれに限定されない。即ち、該タイル構成情報には、少なくとも各タイルのデータサイズを示す情報が含まれていれば、フレーム内のタイルの個数、及び各タイルの座標を示す情報の代わりに、各タイルの番号を示す情報が含まれていても、それ以外の情報が含まれていても構わない。
次に、ステップS403においてストリーム送信部205は、送信バッファ206の空き容量のデータサイズ(以下、空き容量と称す)に関する情報を取得する。そしてストリーム送信部205は、フレームバッファ203から取得した符号化フレームデータ全体のデータサイズと送信バッファ206の空き容量とを比較して、該符号化フレームデータを送信バッファ206へ格納可能か否かを判定する(ステップS404)。ステップS404において送信バッファ206の空き容量が十分あると判定した場合(ステップS404のYES)、ストリーム送信部205は該符号化フレームデータのパケット化と送信バッファ206への格納を行う(ステップS405)。そして、ステップS405の処理の後、ストリーム伝送部205は符号化フレームデータの送信処理を終了する。一方、ステップS404において送信バッファ206の空き容量が十分でないと判定した場合(ステップS404のNO)、ストリーム送信部205は選択的タイル送信処理を行う(ステップS406)。尚、ステップS404にて、ストリーム送信部205は送信バッファ206へ格納可能か否かを判定するために、送信バッファ206の空き容量が十分であるか否かを判定するが、例えば送信バッファ206の空き容量が所定数以下であるか否かを判定してもよい。また、ストリーム送信部205は、送信バッファ206の空き容量が所定数より小さいか否かを判定するようにしてももちろんよい。
次に、ステップS406のより詳細な手順について、図5を参照して説明する。まず、ステップS402で取得した各タイルのデータサイズとステップS403で取得した送信バッファ206の空き容量とに基づいて、ストリーム送信部205は、送信対象とするタイルの優先度を決定する(ステップS501)。ここで、図3(a)及び図3(b)を例にして、本実施形態では送信対象とするタイルの優先度を優先度P2と決定する。次にストリーム送信部205は、先頭のタイル(T1)から順に、各タイルに割り当てられた優先度を取得する(ステップS502)。そして、ストリーム送信部205は、ステップS502で取得した各タイルの優先度が、ステップS501で決定された送信対象のタイルの優先度に当てはまるか否か、つまり本実施形態では優先度がP2であるか否かを判定する(ステップS503)。尚、本実施形態ではステップS503においてストリーム送信部205は、ステップS502で取得したタイルの優先度がP2であるか否かを判定するが本発明はこれに限定されない。即ち、本発明においてストリーム送信部205は、送信対象とするタイルの優先度を複数設定して、当該設定された複数の優先度のうち所定の優先度のいずれかであれば送信タイルの優先度に当てはまると判定するようにしてもよい。
ステップS503において、該タイルに割り当てられた優先度が送信対象のタイルの優先度に当てはまると判定された場合(ステップS503のYES)、ストリーム送信部205はステップS505の処理へ進む。ステップS505においてストリーム送信部205は、該タイルのデータ(以下、タイルデータと称す)をパケット化し、該タイルデータを送信バッファ206へ格納し、ステップS506の処理へ進む。ステップS506においてストリーム送信部205は、タイル情報格納部208に該タイルの符号化タイルデータが送信装置から送信されたこと記録し、タイル情報を更新する。
一方、ステップS503において、該タイルに割り当てられた優先度が送信対象のタイルの優先度でないと判断された場合(ステップS503のNO)、ストリーム送信部205はステップS504の処理へ進む。ステップS504においてストリーム送信部205は、該送信対象のタイルのタイルデータのうち、符号化タイルデータ部分をクリア(リセット・削除)する。そして、ストリーム送信部205は、該タイルデータのヘッダー部分に符号化データが空であることを示す“not−coded”フラグを設定したタイルデータに入れ替え、ステップS505の処理へ進む。次に、ステップS505にてストリーム送信部205は、ステップS504で生成したタイルデータをパケット化し、パケット化した該タイルデータを送信バッファ206へ格納し、ステップS506の処理へ進む。ステップS506においてストリーム送信部205は、タイル情報格納部208に該タイルの符号化タイルデータが送信装置から送信されたこと記録し、タイル情報を更新する。ここで、ステップS503において送信対象のタイルの優先度でない(ステップS503のNO)と判定され、ステップS504において符号化データ部分を空にされて“not−coded”フラグを設定されたタイルは、非送信タイル(0)として記録される。
ストリーム送信部205は、ステップS506にてタイル情報の更新をし終えると、処理対象のフレーム内に未処理のタイルがあるか否かを判定する(ステップS507)。そして、処理対象のフレーム内に未処理のタイルが無ければ(ステップS507のYES)、ストリーム送信部205は符号化フレームデータの送信処理を終了する。一方、処理対象のフレーム内に未処理のタイルがあれば(ステップS507のNO)、ストリーム送信部205は次のタイルを選択し(ステップS508)、ステップS508で選択されたタイルの優先度の取得(ステップS502)から繰り返す。
上述した図4及び図5に示す手順により、図3(b)の例ではT6、T7、T10、T11のタイルが、符号化部202から出力されたままのタイルデータで送信バッファ206に格納される。そして、それ以外のタイルは全てステップS504の処理により“not−coded”のフラグが設定された符号化データ無しのタイルデータに変換されて送信バッファ206に格納される。
尚、本実施形態において、上述したように“not−coded”のフラグを用いるが、本発明はこれに限定されない。即ち、符号化タイルデータが削除されている、又は符号化タイルデータが無いことを示す情報を用いても構わない。このように、優先度の低いタイルを符号化データ無しとして送信することで、受信装置に対し該タイルは符号化データ無しであることを明示的に示すことになり、符号化タイルデータのまま送信されるタイルの復号位置を間違って認識されることを抑制できる。
また、本実施形態の送信装置101(ストリーム送信部205)は、送信バッファ206の空き容量とタイルの優先度とに基づいて選択的タイル送信処理を行うが、本発明はこれに限定されない。即ち、本発明の送信装置は、送信及び受信可能なデータサイズ及び送信レート等に基づいて選択的タイル送信処理を行うものであればよく、受信装置における復号処理が高負荷であるか否かを示す情報に基づいて選択的タイル送信処理を行っても構わない。また、本発明の送信装置は、受信装置におけるTCPのAKCパケットの返信処理に遅延が生じているか否かを示す情報に基づいて、選択的タイル送信処理を行っても構わない。
以上説明したように、本実施形態のストリーム送信部205は、図4及び図5に示した手順により送信バッファ206の空き容量とタイル毎の優先度に応じ、タイル単位で送信処理を制御することができる。即ち、優先度の高いタイルにおいては符号化部202で符号化された符号化タイルデータを送信し、優先度の低いタイルにおいては符号化タイルデータを削除して“符号化データ無し”を示すフラグを設定して符号化タイルデータの無いタイルデータを送信する。これにより、優先度が低いタイルではタイルデータのサイズを小さくすることができ、送信バッファ206に占める割合を非常に小さくすることができる。
また、従来のフレーム送信スキップ及びGOP送信スキップでは、優先度の高いタイルもフレーム単位及びGOP単位でスキップされていたため、優先度の高いタイル部分に動画の途切れを発生させていた。しかしながら、本実施形態の選択的タイル送信処理により、送信バッファ206の空き容量に基づいてタイル単位で送信制御することができるため、優先度の高いタイル部分の動画は連続フレームとして送信することができる。このため、本実施形態により、優先度の高いタイル部分の動画を従来と比べて途切れの少ない滑らかな動画として提供することができる。
また、優先度の低いタイルを符号化タイルデータが無いことを示す“not−coded”フラグを用いることで、符号化データフォーマットに法りながら、優先度の低いタイルのタイルデータのサイズを小さくして送信することができる。そして、“not−coded”フラグを含むタイルデータを受信した受信装置は、該タイルの符号化タイルデータが無いという情報を取得することができ、各タイルの復号位置を正しく取得することができる。
<実施形態2>
前述した実施形態1では、送信装置内の送信バッファの空き容量が所定数以下になった場合における送信装置の送信制御処理について説明した。次に本実施形態では、実施形態1において非送信タイルとして送信されたタイルの優先度が、時間経過後に送信対象のタイルの優先度を満たした場合に、送信タイルとして送信するための送信装置の送信制御処理について説明する。例えば、実施形態1において送信装置の送信制御処理によって符号化データの送信レートを一時的に低下させるよう制御している状態の後に、送信レートを向上させる余裕があると判断された場合に、本実施形態で説明する処理を行う。ここで、符号化データの送信レートを向上させる余裕ができると判断される場合とは、例えば、ネットワークの輻輳が軽減された場合や、送信装置側の動画の符号化処理の負荷が軽減される等して送信バッファの空き容量が増加した場合である。
本実施形態では、優先度が低く非送信タイルとされていたタイルの中から各タイルの優先度を基に送信状態に変更するタイルを選択し、選択されたタイルがフレーム間符号化された動画データである場合は該タイルの動画をフレーム内符号化で再符号化し送信する。尚、本実施形態が実施形態1と異なるのは図4の選択的タイル送信処理(ステップS406)の詳細処理のみであることから、簡単のため本実施形態におけるステップS406の詳細処理を表す図6の説明のみを行い、その他の説明は省略する。
図6は、実施形態1で説明した図5のフロー図に、本実施形態における非送信タイルの符号化データの再構成処理を追加したフロー図である。
ストリーム送信部205は実施形態1と同様に、各ステップS501〜S503の処理を行う。そして本実施形態のステップS503で、処理対象のタイルが送信対象のタイルの優先度を有すると判定した場合(ステップS503のYES)、ストリーム送信部205は該タイルをフレーム内予測を用いて再符号化するか否かを判定する(ステップS601)。具体的にステップS601では、処理対象のタイルがフレーム間予測を用いて符号化されたタイルであって、且つ処理対象のフレームの前のフレームにおいて該処理対象のタイルが非送信タイルのタイルデータとして送信されていたか否かを判定する。
ステップS601にて、該処理対象のタイルがフレーム内予測を用いて符号化されたタイルであると判断された場合(ステップS601のNO)、フレームバッファ203には該処理対象のタイルの符号化タイルデータが格納されている。即ち、改めて再符号化する必要はないため、ストリーム送信部205はステップS505の処理へ進む。また、該処理対象のタイルが前のフレームにおいて送信タイルとして設定されていた場合(ステップS601のNO)、該処理対象のタイルは、符号化にフレーム内予測又はフレーム間予測のいずれを用いたかに関わらず、復号可能な連続した符号化データとなる。このため、ストリーム送信部205は、該処理対象のタイルを再符号化する必要がないと判定し、ステップS505の処理へ進む。ステップS505以降は、実施形態1で説明した処理と同様であるため説明を省略する。
一方、処理対象のタイルがフレーム間予測を用いて符号化されたタイルであって、且つ処理対象のフレームの前のフレームにおいて該処理対象のタイルが非送信タイルのタイルデータとして送信されていた場合(ステップS601のYES)について説明する。この場合、ストリーム送信部205は該処理対象のタイルをフレーム内予測を用いて再符号化するように符号化部202へ指示をする(ステップS602)。
ここで、図3を用いて具体例を説明する。図3(c)は図3(a)の1フレーム後のフレームにおけるタイル分割の模式図である。図3(c)の例では、オブジェクト解析204により各タイルT7、T8、T11、T12の部分に人が映っていることが認識されている。そして、図3(d)は、図3(c)に示すようにオブジェクト解析部204によるオブジェクト解析に基づいて、各タイルに優先度P0〜P2を割り当てることを示している。図3(d)において、図3(c)で人が認識された各タイルT7、T8、T11、T12に、高い優先度P2が割り当てられている。したがって、図3(b)から図3(d)に示すように各タイルの優先度が遷移すると、各タイルT8、T12は、図3(b)において優先度P1であったが、図3(d)において優先度P2に変化する。
このため、ストリーム送信部205はステップS601において、図3(d)における該各タイルT8、T12を再符号化するタイルである(ステップS601のYES)と判断する。そして、ステップS602において、ストリーム送信部205は、該各タイルT8、T12をフレーム内予測を用いて符号化するように符号化部202へ指示をする。一方、T8、T12以外の各タイルはステップS601において該各タイルを再符号化しない(ステップS601のNO)と判断される。そして、ステップS505において、ストリーム送信部205は、実施形態1と同様に該各タイルの符号化フレームデータをパケット化し、送信バッファ206へ格納する。
次に、ステップS602以降の処理について説明する。ステップS602において、ストリーム送信部205は、符号化部202に対して該タイルをフレーム内符号化で再符号化するように指示をし、ステップS603の処理へ進む。
ステップS603において、ストリーム送信部205はステップS602で再符号化の指示をしてから一定時間以内に、符号化部202によって再符号化された符号化タイルデータがフレームバッファ203に格納されたか否かを判定する。これは、ステップS602による再符号化の指示の後、符号化部202が即座に再符号化してフレームバッファ203へ出力する場合と、数フレーム程度遅れてフレームバッファ203へ出力する場合があるためである。尚、上記の各場合は、符号化部202の処理能力と処理手順に依存する。
ステップS603で処理対象のタイルの符号化タイルデータがフレームバッファ203に格納されたと判定された場合(ステップS603のYES)、ストリーム送信部205は該符号化タイルデータをフレームバッファ203から取得する(ステップS604)。そして、ストリーム送信部205は、取得した該符号化タイルデータをパケット化して送信バッファ206へ格納する(ステップS505)。一方、テップS603において処理対象のタイルの符号化タイルデータがフレームバッファ203に格納されていないと判定された場合(ステップS603のNO)、ストリーム送信部205はステップS504の処理を行う。これは、符号化部202が符号化データを生成してフレームバッファ203へ格納するまでは、処理対象のタイルを非送信タイルとして処理する必要があるためである。このように、所定時間以内に再符号化されない場合(ステップS603のNO)、非送信タイルとしての処理を施すことで、リアルタイム性を低下させずに処理対象のフレーム全体の処理を行うことができる。
以上説明したように、本実施形態のストリーム送信部205は、図4及び図6に示した手順により送信バッファ206の空き容量とタイル毎に設定された優先度とに応じ、タイル単位で送信処理を制御することができる。
また、各タイルに割り当てられた優先度が遷移することにより符号化タイルデータの送信対象となるタイルが変わった場合にも、該送信対象となるタイルの符号化タイルデータを送信するよう制御することが可能となる。即ち、優先度の遷移により非送信タイルであったタイルが送信対象のタイルに変更された場合、フレーム内予測を用いて再符号化するため、優先度が遷移したフレームがGOPの途中のフレームであっても、受信装置で復号し、動画再生することが可能である。
尚、符号化部202は再符号化により処理負荷を増大することになるが、タイル単位の再符号化はフレーム単位の再符号化に比べてデータサイズが少なく、他タイルと予測符号化における参照関係がなく並列処理が行いやすい方法である。このため、フレーム全体の再符号化と比べてタイル単位の再符号化の方が処理負荷の増加量を減少させることができる。
従って本実施形態に記載の技術は、通信状況の異なる複数の受信装置へ同時に動画をストリーム伝送するユースケースにおいて実現可能であり、且つ有効である。例えば、監視カメラでは、同時多数の符号化能力を持たないが、通信状況の異なる複数の受信装置へ同時に動画をストリーム伝送することが要求されるため、本実施形態に記載の技術を実現可能である。
<実施形態3>
次に、本実施形態では実施形態2と同様に、実施形態1で説明した送信装置により符号化データの送信レートを一時的に低下させて送信制御を行っていた後に、送信レートを向上させる余裕ができたと判断された場合における送信制御処理について説明する。尚、実施形態2では、ストリーム送信部205が処理対象のタイルを再符号化する必要があると判定した場合に、該処理対象のタイルの再符号化処理を符号化部202へ指示することで、該処理対象のタイルの符号化データを送信可能にする手順を説明した。本実施形態では予め蓄積しておいた符号化タイルデータをまとめて送信することで、GOPの途中であっても該処理対象のタイルの符号化タイルデータを送信可能にする手順を説明する。尚、本実施形態において、符号化タイルデータはフレームバッファ203に予め蓄積することとするが、本発明はこれに限定されない。即ち、ネットワークカメラ101内のフレームバッファ203以外の他のバッファに蓄積しても構わないし、外部の記憶装置に蓄積しても構わない。また、本実施形態が実施形態1と異なるのは図4の選択的タイル送信処理(ステップS406)の詳細処理のみであることから、簡単のため本実施形態におけるステップS406の詳細処理を表す図7の説明のみを行い、その他の説明は省略する。
図7は、実施形態1で説明した図5のフロー図に、本実施形態で説明する非送信タイルの符号化データの再構成処理を追加したフロー図である。ストリーム送信部205は実施形態1と同様に、各ステップS501〜S503の処理を行う。
本実施形態のステップS503で、処理対象のタイルが送信対象のタイルの優先度を有していないと判定された場合(ステップS503のNO)、ストリーム送信部205は、ステップS701へ進む。ステップS701において、ストリーム送信部205は、該タイルの符号化タイルデータがフレーム内予測を用いて符号化されているかを確認する。
まず、ステップS701において、該符号化タイルデータがフレーム内予測を用いて符号化されていないと判定された場合(ステップS701のNO)、ストリーム送信部205は該符号化タイルデータをフレームバッファ203へ蓄積する(ステップS703)。尚、該符号化タイルデータをフレームバッファ203へ蓄積する場合には、ストリーム送信部205は該符号化タイルデータを、該符号化タイルデータが何れのタイルに属するか識別できるようにフレームバッファ203に格納する。ステップS703の処理の後は、実施形態1と同様である。即ち、ストリーム送信部205は、該タイルのタイルデータのうち符号化タイルデータ部分をクリアし(ステップS504)、変換されたタイルデータをパケット化して、送信バッファ206へ格納する(ステップS505)。
一方、ステップS701において、該符号化タイルデータがフレーム内予測を用いて符号化されていると判定された場合(ステップS701のYES)、ストリーム送信部205はステップS702へ進む。次にストリーム送信部205は、既にフレームバッファ203に蓄積されている該タイルの符号化タイルデータを削除し(ステップS702)、フレーム内予測を用いて符号化された符号化タイルデータをフレームバッファ203へ蓄積する(ステップS703)。ステップS703の処理の後、ストリーム送信部205は、上述したようにステップS504、及びステップS505の各処理を行う。尚、ステップS702においてストリーム送信部205は蓄積されている該タイルの符号化タイルデータを削除するが、これは以下の理由のためである。即ち、処理対象のフレームがフレーム内予測を用いて符号化されることにより、処理対象のフレームより前のフレームのタイルデータを即座に復号処理する必要がないためである。また、フレーム内予測を用いて符号化されたタイルデータから蓄積を再開する処理により、蓄積される符号化タイルデータ数はGOP長のフレーム数が上限となる。
次に、ステップS503で、処理対象のタイルが送信対象のタイルの優先度を有していると判定した場合(ステップS503のYES)について説明する。ステップS503においてYESと判定された場合、ストリーム送信部205は、処理対象のフレームの前のフレームにおける該タイルが非送信タイルデータとして送信されていたか否かを判定する(ステップS704)。
まず、ステップS704において、該タイルが処理対象のフレームの前のフレームで非送信タイルとして送信されていたと判定された場合(ステップS704のYES)、ストリーム送信部205はステップS705の処理を行う。ステップS705において、ストリーム送信部205は、該タイルの符号化タイルデータがフレーム内予測を用いて符号化されたデータであるか否かを判定する。ステップS705において、該符号化タイルデータがフレーム内予測を用いて符号化されたデータでないと判定された場合(ステップS705のNO)、ストリーム送信部205はステップS706の処理を行う。ステップS706において、ストリーム送信部205は、既にフレームバッファ203に蓄積されている該タイルの符号化タイルデータを検索し、該符号化タイルデータをパケット化し、送信バッファ206へ格納する。次に、ストリーム送信部205は、フレームバッファ203に蓄積されている該符号化タイルデータを消去する(ステップS707)。以降、実施形態1と同様に、ストリーム送信部206は該符号化タイルデータをパケット化し、パケット化した符号化タイルデータを送信バッファ206へ格納する(ステップS505)。また、ステップS705において、該符号化タイルデータがフレーム内予測を用いて符号化されたデータであると判定された場合(ステップS705のYES)、ストリーム送信部205は、上述したステップS707の処理へ進む。このため、ストリーム送信部205は、フレームバッファ203に蓄積されている符号化タイルデータを送信しない。以降、実施形態1と同様に、ストリーム送信部206は該符号化タイルデータをパケット化し、パケット化した符号化タイルデータを送信バッファ206へ格納する(ステップS505)。
一方、ステップS704において、該タイルが非送信タイルとして送信されていないと判定された場合(ステップS704のNO)、該タイルは処理対象のフレームの前のフレームにおいて送信タイルである。即ち、該タイルは処理対象のフレームの前のフレームと該処理対象のフレームとにおいて符号化データが連続して送信処理されている。このため、ステップS704においてNOと判定された場合、ストリーム送信部205は、以降、実施形態1と同様に符号化タイルデータをパケット化し、送信バッファ206へ格納する(ステップS505)。
ここで、図3を用いて具体例を説明する。実施形態2において説明したように動画像(フレーム)が図3(a)から図3(c)へ変化することにより、各タイルの優先度は図3(b)から図3(d)へ遷移する。ここで、図3(b)から図3(d)に示すようにタイルの優先度が遷移することにより、タイルT8及びタイルT12の優先度は送信対象の優先度(P2)に変化する。そして、ストリーム送信部205は、優先度が送信対象の優先度に変化したタイルT8及びタイルT12に対して、ステップS705及びステップS706の各処理を施す。即ち、図3(a)から図3(c)へフレームが遷移すると、ストリーム送信部205は、タイルT8及びタイルT12については、処理対処フレームの前のフレームである図3(a)まで蓄積された符号化タイルデータを全て送信する。その後、ストリーム送信部205は、図3(c)のタイルT8及びタイルT12の符号化タイルデータを送信するよう制御する。
以上説明したように、本実施形態のストリーム送信部205は、図4及び図7に示した手順により送信バッファ206の空き容量とタイル毎に設定された優先度とに応じ、タイル単位で送信処理を制御することができる。
また、本実施形態のストリーム送信部205は、各タイルに割り当てられた優先度が遷移することにより符号化タイルデータの送信対象となるタイルが変わった場合にも、該送信対象となるタイルの符号化タイルデータを送信するよう制御することが可能となる。即ち、優先度の遷移により非送信タイルであったタイルが送信対象のタイルに変更された場合、フレーム内予測を用いて再符号化するため、優先度が遷移したフレームがGOPの途中のフレームであっても、受信装置で復号し、動画再生することが可能である。
尚、まとめて送られる連続タイルデータはその時点でのフレーム全体と復号時間が異なってしまうが、タイル形式の符号化では復号もタイル単位での行うため、受信機側の復号器でフレーム全体の復号時間とは独立して復号することが可能である。また、まとめて送信することによる通信負荷の増加は、フレーム全体に対する符号化タイルデータのデータサイズは小さいことから複数であっても十分小さい。
<実施形態4>
本実施形態では、実施形態2及び実施形態3で説明した、符号化タイルデータを送信再開のための各制御方法を、送信再開処理を実行する際に選択する手順について図8を用いて説明する。図8は、実施形態3で説明した図7におけるステップS704からステップS504までの一連の処理に、実施形態2で説明した処理と同様に処理対象のタイルをフレーム内予測を用いて再符号化する処理(ステップS602)を加えたフロー図である。
図8のステップS704で該タイルが処理対象のフレームの前のフレームで非送信タイルとして送信されていた場合(ステップS704のYES)、ストリーム送信部205はステップS801に進む。ステップS801においてストリーム送信部205は、蓄積された符号化タイルデータを実施形態3の方法で送信することが可能か否かを確認する。即ち、ステップS801においてストリーム送信部205は、フレームバッファ203に蓄積された符号化タイルデータを送信するか、再符号化して生成した符号化タイルデータを送信するかを判定する手段である。そして、ステップS801では実施形態3で示した方法と同様にストリーム送信部205は、送信バッファ206の空き容量に対して、フレームバッファ203に蓄積された該符号化タイルデータのデータサイズが小さいか否かを判断する。次に、送信バッファ206の空き容量が十分あって格納可能と判定された場合(ステップS801のYES)、ストリーム送信部205は実施形態3と同様に蓄積された符号化タイルデータを送信バッファ206へ格納する(ステップS706)。さらに、ストリーム送信部205は該符号化タイルデータをフレームバッファ203から削除する(ステップS707)。一方、送信バッファ206に格納可能でないと判定された場合(ステップS801のNO)、ストリーム送信部205は実施形態2で示した再符号化処理を行い(ステップS602)、ステップS707に進む。ステップS707においてフレーム送信部205はフレームバッファ203に蓄積された該符号化タイルデータを削除する。
上述したように図8においてストリーム送信部は、フレームバッファ203に蓄積された符号化タイルデータのデータサイズと、送信バッファ206の空き容量とを比較して判定していたが、図9に別の例を示す。
図9(a)におけるステップS901は、図8における蓄積された符号化タイルデータの送信又は符号化タイルデータの再符号化のうちどちらの処理を行うかを判定する判定処理(ステップS801)に相当する。図9(a)のステップS901においてストリーム送信部205は、蓄積された符号化タイルデータのタイル数が予め決められた閾値(規定値)以内であるか否かを判定する。ステップS901において閾値以内であると判定された場合(ステップS901のYES)、ストリーム送信部205はフレームバッファ203に蓄積された符号化タイルデータの送信処理(ステップS706)へ進む。一方、ステップS901において閾値を超えると判定された場合(ステップS901のNO)、ストリーム送信部205は再符号化処理(ステップS602)へ進む。上述したように、図9(a)に示す方法では、ストリーム送信部205はフレームバッファ203に蓄積された符号化タイルデータのタイル数に基づいて符号化タイルデータの送信又は再符号化処理を行う。この方法により、符号化タイルデータの送信を再開するフレーム(アクセス画像)の、該アクセス画像を含むGOPにおける再生順序が、該GOPの開始のキーフレームに近い場合に蓄積された符号化タイルデータを送信するように送信装置を制御できる。即ち、該アクセス画像が該GOPの開始のキーフレームに近く、フレームバッファ203に蓄積された符号化タイルデータのタイル数は少ないため、送信する符号化タイルデータのタイル数が少なく済む。このため、送信装置における送信処理負荷、通信負荷、受信装置における復号処理負荷等の増加を軽減することができる。一方、該アクセス画像の、該アクセス画像を含むGOPにおける再生順序が、該GOPの開始のキーフレームから遠い場合、送信する符号化タイルデータのタイル数が多くなる。このため、送信装置における送信処理負荷、通信負荷、受信装置における復号処理負荷等が増加する。
また、図9(b)におけるステップS902は、図8における蓄積された符号化タイルデータの送信又は符号化タイルデータの再符号化のうちどちらの処理を行うかを判定する判定処理(ステップS801)に相当する。図9(b)のステップS902においてストリーム送信部205は、再符号化を行うタイル数が予め決められた閾値(規定値)以内であるか否かを判断する。ステップS902において閾値以内であると判定された場合(ステップS902のYES)、ストリーム送信部205は再符号化処理(ステップS602)へ進む。一方、ステップS902において閾値を超えると判定された場合(ステップS902のNO)、ストリーム送信部205はフレームバッファ203に蓄積された符号化タイルデータの送信処理(ステップS706)へ進む。上述したように、図9(b)に示す方法では、ストリーム送信部205は再符号化を行うタイル数に基づいて符号化タイルデータの送信又は再符号化処理を行う。この方法により、再符号化を行うタイル数が所定の値より多い場合に、再符号化を行わず、フレームバッファ203に蓄積された符号化タイルデータを送信することにより、送信装置の符号化処理負荷の増加を軽減することができる。
上述した図9(a)及び図9(b)の処理により本実施形態における送信装置は、送信バッファ206の空き容量及び通信帯域の状況に応じて、実施形態2及び実施形態3で説明した符号化タイルデータの送信再開のための2つの方法を選択することができる。
次に、図10を参照して、送信バッファ206の空き容量に基づいて動画フレームの符号化方式をタイル形式とフレーム単位形式を実行時に選択する手順を説明する。図10は、実施形態1で示した図4における、送信バッファ206の空き容量とタイル毎に設定された優先度とに応じた選択的タイル送信処理の手順に、本実施形態における処理を一部追加したフロー図である。図10では、送信バッファ206の空き容量が十分か否か(即ち、処理対象のタイルの符号化タイルデータを送信バッファ206へ格納可能か否か)を判定した(図4のステップS404と同様の処理)後に、更に次の処理を追加する。
図10におけるステップS404で送信バッファ206の空き容量が十分でないと判定された場合(ステップS404のNO)、ストリーム送信部205は処理対象のフレームがタイル単位で符号化されているか否かを判定する(ステップS1001)。そして、ステップS1001においてタイル単位で符号化されていないと判定された場合(ステップS1001のNO)、ストリーム送信部205は該処理対象のフレームをタイル単位の符号化に変更し(ステップS1002)、ステップS405の処理へ進む。ステップS405において、ストリーム送信部205は符号化して生成された符号化フレームデータをパケット化し、送信バッファ206へ格納する。
一方、ステップS404で送信バッファ206の空き容量が十分であると判定された場合(ステップS404のYES)、ストリーム送信部205は処理対象のフレームがタイル単位で符号化されているか否かを判定する(ステップS1003)。そして、ステップS1003においてタイル単位で符号化されている判定した場合(ステップS1003のYES)、ストリーム送信部205は該処理対象のフレームをフレーム単位の符号化に変更し(ステップS1004)、ステップS1004の処理へ進む。ステップS1004において、ストリーム送信部205は符号化して生成された符号化フレームデータをパケット化し、送信バッファ206へ格納する。
以上の手順により、実施形態1で説明した選択的符号化タイルデータの送信を制御することに加え、送信バッファ206の空き容量に応じてフレーム単位の符号化又はタイル単位の符号化のどちらを選択して符号化を行うかを切り替えることができる。
また、上述した実施形態における図6〜8の処理フローに示すように、符号化タイルデータの送信再開の処理はタイル毎に個別に実行される。このため、符号化タイルデータ送信再開が複数のタイルで同時に発生する場合であっても、図9(a)及び図9(b)の方法を組み合わせて、送信再開の処理を実行するタイル毎に個別に再開方式を適用することが可能である。例えば、図3(a)〜(d)に示すように動画内のオブジェクトが時間経過に伴い移動する場合、送信優先度が高くなることにより非送信タイルから送信タイルに変更される、タイルの位置及び数は時々で異なる。この場合、本実施形態のストリーム送信部205は、以下のことを可能にする。即ちストリーム送信部205は、フレーム内予測を用いた再符号化が可能なタイル数と各タイルの蓄積された符号化データのサイズとに応じて、再符号化された符号化データまたは蓄積された符号化データの何れかを送信をタイル毎に適時選択することができる。
<実施形態5>
上記各実施形態1〜5において、図2に示した各処理部はハードウェアでもって構成しているものとして説明した。しかし、図2に示した各処理部で行う処理をコンピュータプログラムで実行しても良い。
図11は、上記各実施形態1〜5に係る画像伝送装置の各処理部が行う処理を実行するコンピュータのハードウェアの構成例を示すブロック図である。
CPU1101は、RAM1102やROM1103に格納されているコンピュータプログラムやデータを用いてコンピュータ全体の制御を行うと共に、上述した実施形態に係る画像符号化装置が行うものとして上述した各処理を実行する。即ち、CPU1101は、図1、図3、及び図6に示した各処理部として機能することになる。
RAM1102は、外部記憶装置1106からロードされたコンピュータプログラムやデータ、I/F(インターフェース)1107を介して、外部から取得したデータ等を一時的に記憶するためのエリアを有する。さらに、RAM1102は、CPU1101が各種の処理を実行する際に用いるワークエリアを有する。即ち、RAM1102は、例えば、フレームメモリとして割り当てたり、その他の各種のエリアを適宜提供したりすることができる。
ROM1103は、本コンピュータの設定データや、ブートプログラム等を格納する。
操作部1104は、キーボードやマウス等により構成されており、本コンピュータのユーザーが操作することで、各種の指示をCPU1101に対して入力することができる。
出力部1105は、CPU1101による処理結果を表示する。また、出力部1105は、例えば液晶ディスプレイで構成される。
外部記憶装置1106は、ハードディスクドライブ装置に代表される、大容量情報記憶装置である。外部記憶装置1106には、オペレーティングシステム(OS)や、図1、図3、及び図6に示した各部の機能をCPU1101に実現させるためのコンピュータプログラムが保存されている。さらには、外部記憶装置1106には、処理対象としての各画像が保存されていても良い。
外部記憶装置1106に保存されているコンピュータプログラムやデータは、CPU1101による制御に従って適宜、RAM1102にロードされ、CPU1101による処理対象となる。
I/F1107には、LANやインターネット等のネットワーク、投影装置や表示装置等の他の機部を接続することができ、本コンピュータはこのI/F1107を介して様々な情報を取得したり、送出したりすることができる。
バス1108は、上述の各部を繋ぐ。
上述の構成における作動は、前述のフローチャートで説明した作動をCPU1101が中心となってその制御を行う。
<その他の実施形態>
尚、上述した各実施形態において、動画データを符号化するための動画符号化方式としてHEVCを用いたが、本発明はこれに限定されない。即ち、動画符号化方式はHEVCに限定されず、フレームを分割したタイル形式またはブロック形式で処理が可能な方式であれば構わない。また、使用する通信プロトコルはTCPに限定されず、種々の送信プロトコルを用いることができる。即ち、本発明における、通信状況に応じて符号化タイルデータの変換を行う処理は、RTP/UDPとRTCPとを使用して通信帯域を監視する例にも適用可能である。
また、上述した各実施形態において、タイルの優先度を決定する方法として動画のオブジェクト認識を用いて説明を行うが、本発明はこれに限定されない。即ち、タイルの優先度を受信装置側の指示により決定する場合に対しても本発明を適用可能である。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

Claims (13)

  1. 送信バッファに蓄積された画像を伝送する画像伝送装置であって、
    前記画像を符号化ブロック単位で符号化する符号化手段と、
    前記符号化手段によって符号化された画像の符号化データを送信する送信手段と、
    前記送信バッファの空き容量に関する情報を取得する第1の取得手段と、
    前記符号化ブロックを複数含む領域であって、前記符号化手段によって前記領域単位で並行処理が可能な領域であるタイルの優先度を取得する第2の取得手段と、前記第1の取得手段によって取得された前記送信バッファの空き容量に関する情報と、前記第2の取得手段によって取得された処理対象のタイルの優先度とに基づいて、前記処理対象のタイルに対応するデータを送信するよう前記送信手段を制御する制御手段と
    を有する画像伝送装置。
  2. 前記制御手段は、前記送信バッファに前記符号化されたタイルを格納可能でない場合に、前記タイルの優先度に基づいて、前記処理対象のタイルに対応するデータを送信するよう前記送信手段を制御することを特徴とする請求項1に記載の画像伝送装置。
  3. 前記制御手段は、前記送信バッファの空き容量が所定の値より小さい場合に、前記符号化手段によって符号化された、前記画像のうちの選択されたタイルの符号化データを送信するよう前記送信手段を制御することを特徴とする請求項2に記載の画像伝送装置。
  4. さらに、前記送信手段によって送信される対象の画像のデータサイズと、前記送信バッファの空き容量に関する情報とに基づいて、送信対象のタイルの優先度を取得する第3の取得手段を有し、
    前記制御手段は、前記第2の取得手段によって取得された前記処理対象のタイルの優先度が、前記第3の取得手段によって取得された前記送信対象のタイルの優先度よりも低い場合に、前記符号化手段によって符号化した前記処理対象のタイルの符号化データを除くデータを送信するよう前記送信手段を制御することを特徴とする請求項3に記載の画像伝送装置。
  5. 前記制御手段は、前記第2の取得手段によって取得された前記処理対象のタイルの優先度が、前記第3の取得手段によって取得された前記送信対象のタイルの優先度よりも低い場合に、前記符号化手段によって符号化した前記処理対象のタイルの符号化データが無いことを示す情報を送信するよう前記送信手段を制御することを特徴とする請求項3又は請求項4の何れか一項に記載の画像伝送装置。
  6. 前記制御手段は、前記第2の取得手段によって取得された前記処理対象のタイルの優先度が、前記第3の取得手段によって取得された前記送信対象のタイルの優先度よりも高い場合に、前記符号化手段によって符号化した前記処理対象のタイルの符号化データを送信するよう前記送信手段を制御することを特徴とする請求項3乃至請求項5の何れか一項に記載の画像伝送装置。
  7. 前記第2の取得手段によって取得されるタイルの優先度は、前記画像をオブジェクト解析した結果に基づくことを特徴とする請求項4乃至請求項6の何れか一項に記載の画像伝送装置。
  8. 前記符号化手段は、前記送信バッファが前記符号化されたタイルを格納可能でない状態から、格納可能である状態に変化した場合に、前記送信手段によって送信されなかったタイルをフレーム内予測を用いて符号化することを特徴とする請求項1乃至請求項7の何れか一項に記載の画像伝送装置。
  9. さらに、前記符号化手段によって符号化されたタイルの符号化データを蓄積する蓄積手段を有し、
    前記制御手段は、前記送信バッファが前記符号化されたタイルを格納可能でない状態から格納可能である状態に変化した場合に、前記送信手段によって送信されなかったタイルを符号化した符号化データを送信するか、または、前記蓄積手段によって蓄積された符号化データを送信するかを判定し、判定の結果に基づいて符号化データを送信するよう送信手段を制御することを特徴とする請求項8に記載の画像伝送装置。
  10. 前記制御手段は、前記送信バッファが前記符号化されたタイルを格納可能でない状態から格納可能である状態に変化した場合に、前記蓄積手段によって蓄積された符号化データのタイル数に基づいて、前記送信手段によって送信されなかったタイルを符号化した符号化データを送信するか、または、前記蓄積手段によって蓄積された符号化データを送信するかを判定し、判定の結果に基づいて符号化データを送信するよう送信手段を制御することを特徴とする請求項9に記載の画像伝送装置。
  11. 前記制御手段は、前記送信バッファが前記符号化されたタイルを格納可能でない状態から格納可能である状態に変化した場合に、前記送信手段によって送信されなかったタイル数に基づいて、前記送信手段によって送信されなかったタイルを符号化した符号化データを送信するか、または、前記蓄積手段によって蓄積された符号化データを送信するかを判定し、判定の結果に基づいて符号化データを送信するよう送信手段を制御することを特徴とする請求項9又は請求項10の何れか一項に記載の画像伝送装置。
  12. 送信バッファに蓄積された画像を伝送する画像伝送方法であって、
    前記画像を符号化ブロック単位で符号化する符号化工程と、
    前記符号化工程によって符号化された画像の符号化データを送信する送信工程と、
    前記送信バッファの空き容量に関する情報を取得する第1の取得工程と、
    前記符号化ブロックを複数含む領域であって、前記符号化工程によって前記領域単位で並行処理が可能な領域であるタイルの優先度を取得する第2の取得工程と、前記第1の取得工程によって取得された前記送信バッファの空き容量に関する情報と、前記第2の取得工程によって取得された処理対象のタイルの優先度とに基づいて、前記処理対象のタイルに対応するデータを送信するよう前記送信工程を制御する制御工程と
    を有する画像伝送方法。
  13. コンピュータを、請求項1に記載の画像伝送装置の各手段として機能させるためのプログラム。
JP2013233494A 2013-11-11 2013-11-11 画像伝送装置、画像伝送方法、及びプログラム Pending JP2015095733A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013233494A JP2015095733A (ja) 2013-11-11 2013-11-11 画像伝送装置、画像伝送方法、及びプログラム
US14/536,495 US20150131715A1 (en) 2013-11-11 2014-11-07 Image transmission apparatus, image transmission method, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013233494A JP2015095733A (ja) 2013-11-11 2013-11-11 画像伝送装置、画像伝送方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2015095733A true JP2015095733A (ja) 2015-05-18
JP2015095733A5 JP2015095733A5 (ja) 2016-12-22

Family

ID=53043793

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013233494A Pending JP2015095733A (ja) 2013-11-11 2013-11-11 画像伝送装置、画像伝送方法、及びプログラム

Country Status (2)

Country Link
US (1) US20150131715A1 (ja)
JP (1) JP2015095733A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112215898A (zh) * 2020-09-18 2021-01-12 深圳市瑞立视多媒体科技有限公司 多相机间帧数据均衡控制方法、装置和计算机设备

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG11201600044QA (en) * 2013-07-12 2016-02-26 Sony Corp Image decoding device and method
WO2018156243A1 (en) * 2017-02-22 2018-08-30 Twitter, Inc. Transcoding video
US11798254B2 (en) * 2020-09-01 2023-10-24 Northwestern University Bandwidth limited context based adaptive acquisition of video frames and events for user defined tasks
EP3968635A1 (en) 2020-09-11 2022-03-16 Axis AB A method for providing prunable video

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06292187A (ja) * 1993-03-31 1994-10-18 Nippon Telegr & Teleph Corp <Ntt> 符号化映像データ転送装置
JP2003204541A (ja) * 2001-12-28 2003-07-18 Nippon Signal Co Ltd:The 映像処理方法及び映像処理装置
JP2005110145A (ja) * 2003-10-02 2005-04-21 Ricoh Co Ltd 符号列変換装置、符号列変換方法、撮影システム、画像表示システム、監視システム、プログラム、及び、情報記録媒体
JP2006101472A (ja) * 2004-04-23 2006-04-13 Sumitomo Electric Ind Ltd 動画像データの符号化方法、復号化方法、これらを実行する端末装置、及び双方向対話型システム
JP2007274443A (ja) * 2006-03-31 2007-10-18 Canon Inc 画像伝送方法、送信装置、受信装置及び画像伝送システム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5867480A (en) * 1996-09-12 1999-02-02 Cabletron Systems, Inc. Method and apparatus for controlling congestion in a network node
US6563953B2 (en) * 1998-11-30 2003-05-13 Microsoft Corporation Predictive image compression using a single variable length code for both the luminance and chrominance blocks for each macroblock
US6404814B1 (en) * 2000-04-28 2002-06-11 Hewlett-Packard Company Transcoding method and transcoder for transcoding a predictively-coded object-based picture signal to a predictively-coded block-based picture signal
KR100643454B1 (ko) * 2001-11-17 2006-11-10 엘지전자 주식회사 영상 데이터 전송 제어방법
EP2553928A4 (en) * 2010-03-26 2014-06-25 Agency Science Tech & Res METHODS AND DEVICES FOR OBTAINING AN ENCODED DIGITAL SIGNAL
KR101791242B1 (ko) * 2010-04-16 2017-10-30 에스케이텔레콤 주식회사 영상 부호화/복호화 장치 및 방법
US9049447B2 (en) * 2010-12-30 2015-06-02 Pelco, Inc. Video coding
JP5895163B2 (ja) * 2011-03-11 2016-03-30 パナソニックIpマネジメント株式会社 無線映像送信装置および無線映像受信装置ならびにこれらを備えた無線映像伝送システム
WO2014005077A1 (en) * 2012-06-29 2014-01-03 Vid Scale, Inc. Frame prioritization based on prediction information

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06292187A (ja) * 1993-03-31 1994-10-18 Nippon Telegr & Teleph Corp <Ntt> 符号化映像データ転送装置
JP2003204541A (ja) * 2001-12-28 2003-07-18 Nippon Signal Co Ltd:The 映像処理方法及び映像処理装置
JP2005110145A (ja) * 2003-10-02 2005-04-21 Ricoh Co Ltd 符号列変換装置、符号列変換方法、撮影システム、画像表示システム、監視システム、プログラム、及び、情報記録媒体
JP2006101472A (ja) * 2004-04-23 2006-04-13 Sumitomo Electric Ind Ltd 動画像データの符号化方法、復号化方法、これらを実行する端末装置、及び双方向対話型システム
JP2007274443A (ja) * 2006-03-31 2007-10-18 Canon Inc 画像伝送方法、送信装置、受信装置及び画像伝送システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112215898A (zh) * 2020-09-18 2021-01-12 深圳市瑞立视多媒体科技有限公司 多相机间帧数据均衡控制方法、装置和计算机设备
CN112215898B (zh) * 2020-09-18 2024-01-30 深圳市瑞立视多媒体科技有限公司 多相机间帧数据均衡控制方法、装置和计算机设备

Also Published As

Publication number Publication date
US20150131715A1 (en) 2015-05-14

Similar Documents

Publication Publication Date Title
KR101809306B1 (ko) 낮은 레이턴시 레이트 제어 시스템 및 방법
US11025933B2 (en) Dynamic video configurations
US8634413B2 (en) Use of frame caching to improve packet loss recovery
JP6522583B2 (ja) 改善されたrtpペイロードフォーマット設計
US10205763B2 (en) Method and apparatus for the single input multiple output (SIMO) media adaptation
JP2015095733A (ja) 画像伝送装置、画像伝送方法、及びプログラム
WO2014039294A1 (en) Adaptation of encoding and transmission parameters in pictures that follow scene changes
US10341670B1 (en) Video encoder bit rate stabilization
JP3668110B2 (ja) 画像伝送システムおよび画像伝送方法
JP2017135464A (ja) 映像送信装置、映像送信システム、映像送信方法、及びプログラム
WO2008146892A1 (ja) 動画像変換装置、動画像変換方法、および動画像変換プログラム
CN107210843B (zh) 使用喷泉编码的实时视频通信的系统和方法
JP2004350263A (ja) 画像処理装置及び画像処理方法
WO2012114774A1 (ja) 動画像符号化装置および動画像復号装置
CN111093082A (zh) 一种流媒体直播的方法及系统
JP2014187448A (ja) 映像配信システム及びデコーダ並びに映像配信方法
US9363574B1 (en) Video throttling based on individual client delay
JP2015186036A (ja) 情報処理装置、情報処理システム、情報処理方法及びプログラム
JP2014143496A (ja) 送信装置、送信装置の制御方法およびプログラム
EP2908516A1 (en) Process for transmitting an ongoing video stream from a publisher to a receiver through a MCU unit during a live session
KR101461292B1 (ko) 제1 mpeg 스트림으로부터 제2 mpeg 스트림으로의 트랜스코더
JP2018019262A (ja) 映像送信装置、映像受信装置、映像配信システム、映像送信装置の制御方法、及び、プログラム
Vohra Streaming low-bandwidth real-time video using video super-resolution
JP6289103B2 (ja) 画像処理装置及びその制御方法、並びに、プログラム
JP2009207007A (ja) 送信装置および送信システム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161107

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161107

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170829

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171027

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180223

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180724