JP5739079B1 - Movie compression apparatus and movie compression / decompression system - Google Patents
Movie compression apparatus and movie compression / decompression system Download PDFInfo
- Publication number
- JP5739079B1 JP5739079B1 JP2015503606A JP2015503606A JP5739079B1 JP 5739079 B1 JP5739079 B1 JP 5739079B1 JP 2015503606 A JP2015503606 A JP 2015503606A JP 2015503606 A JP2015503606 A JP 2015503606A JP 5739079 B1 JP5739079 B1 JP 5739079B1
- Authority
- JP
- Japan
- Prior art keywords
- hash
- compressed data
- unit
- image
- hash value
- 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.)
- Active
Links
- 238000007906 compression Methods 0.000 title claims description 79
- 230000006835 compression Effects 0.000 title claims description 79
- 230000006837 decompression Effects 0.000 title claims description 29
- 238000013500 data storage Methods 0.000 claims description 133
- 230000005540 biological transmission Effects 0.000 claims description 45
- 238000004364 calculation method Methods 0.000 claims description 43
- 230000004044 response Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 20
- 238000004891 communication Methods 0.000 description 18
- 238000000034 method Methods 0.000 description 10
- 238000012790 confirmation Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 238000013144 data compression Methods 0.000 description 2
- 230000002427 irreversible effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/172—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/94—Vector quantisation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
動画データを構成する各フレーム画像からハッシュ値を算出し、各フレーム画像について算出された複数のハッシュ値を各フレーム画像の順番に沿ってリスト化して成るハッシュテーブルを生成して記憶させる。また、各フレーム画像のうち、ハッシュ値が異なる複数のフレーム画像を各ハッシュ値に関連付けて記憶させる一方、ハッシュ値が同じ複数のフレーム画像についてはその中の1つのみを記憶させて他は削除することにより、記憶されるフレーム画像の量を減らして動画全体としてのデータ量を削減できるようにする。A hash value is calculated from each frame image constituting the moving image data, and a hash table formed by listing a plurality of hash values calculated for each frame image in the order of each frame image is generated and stored. In addition, among each frame image, a plurality of frame images having different hash values are stored in association with each hash value, while for a plurality of frame images having the same hash value, only one of them is stored and the others are deleted. By doing so, the amount of frame images stored can be reduced to reduce the data amount of the entire moving image.
Description
本発明は、動画圧縮装置および動画圧縮伸長システムに関するものである。 The present invention relates to a moving image compression apparatus and a moving image compression / decompression system.
近年、ウェブサイトでの動画広告やウェブサービスなど、動画データの利用シーンが急増している。通常、動画データはデータ量が膨大なため、保存したり通信したりしやすいようにデータ圧縮が施される(例えば、特許文献1参照)。
この特許文献1に記載のデータ処理装置では、供給されたビデオ信号を圧縮符号化して圧縮された符号化データを生成し、これにより通信されるデータ量を低減している。また、圧縮符号化データの選択したデータビットを安全なハッシュ値のデータビットに置換することによって、保護された圧縮符号化データを生成するようにしている。 In the data processing apparatus described in Patent Document 1, the supplied video signal is compression-encoded to generate compressed encoded data, thereby reducing the amount of data to be communicated. Also, protected compressed encoded data is generated by replacing selected data bits of the compressed encoded data with data bits of a secure hash value.
ところで、データ圧縮には大きく分けて可逆圧縮と非可逆圧縮とがある。可逆圧縮は、統計的冗長性を特定・除去することでビット数を削減する方式であり、情報が失われることはない。一方、非可逆圧縮は、不必要な情報を特定・除去することでビット数を削減する方式であり、一部の情報が圧縮によって失われる。そのため、非可逆圧縮では、圧縮の際に失われた情報を伸長の際に補完して元画像を再現する必要がある。 By the way, data compression is roughly classified into lossless compression and lossy compression. Lossless compression is a method of reducing the number of bits by identifying and removing statistical redundancy, and information is not lost. On the other hand, lossy compression is a method of reducing the number of bits by identifying and removing unnecessary information, and some information is lost by compression. Therefore, in irreversible compression, it is necessary to reproduce the original image by complementing the information lost during the compression during the decompression.
一般的に、動画圧縮は、各フレームを構成する静止画の圧縮(フレーム内圧縮)と時系列の圧縮(フレーム間圧縮)とを組み合わせて行う。フレーム間圧縮は、フレーム列を前後で比較し、変化のある領域だけを差分データとして保存するようにした手法である。これらの仕組みを用いた動画圧縮アルゴリズムのほとんどが非可逆圧縮である。この種の動画圧縮アルゴリズムの代表的なものとして、MPEG、Motion−JPEG、H.264、VC−2などが知られている。 In general, moving image compression is performed by combining still image compression (intraframe compression) and time-series compression (interframe compression) constituting each frame. The inter-frame compression is a method in which frame sequences are compared before and after and only a region having a change is stored as difference data. Most of the video compression algorithms using these mechanisms are lossy compression. Representative examples of this kind of video compression algorithm include MPEG, Motion-JPEG, H.264, and H.264. H.264, VC-2, and the like are known.
しかしながら、非可逆圧縮方式を採用したMPEG等に代表される従来の動画圧縮アルゴリズムでは、圧縮率が高すぎると元画像の再現性(画質)が悪くなるため、圧縮率と画質とのトレードオフを考慮してアルゴリズムが設計される。そのため、画質を良好に保ったまま圧縮率を高め、動画データの記憶容量を削減したり通信速度を速くしたりすることが難しいという問題があった。 However, in conventional video compression algorithms represented by MPEG and the like that employ an irreversible compression method, if the compression rate is too high, the reproducibility (image quality) of the original image deteriorates. The algorithm is designed with consideration. For this reason, there is a problem that it is difficult to increase the compression rate while maintaining good image quality, to reduce the storage capacity of the moving image data, and to increase the communication speed.
本発明は、このような問題を解決するために成されたものであり、元画像の再現性(画質)を良好に保ったまま、動画データの記憶容量を削減したり通信速度を速くしたりすることができるようにすることを目的とする。 The present invention has been made to solve such a problem, and while maintaining the reproducibility (image quality) of the original image, the storage capacity of the moving image data is reduced and the communication speed is increased. The purpose is to be able to.
上記した課題を解決するために、本発明では、動画データを構成する各フレーム画像からハッシュ値を算出し、各フレーム画像について算出された複数のハッシュ値を各フレーム画像の順番に沿ってリスト化して成るハッシュテーブルを生成して記憶させる。また、各フレーム画像のうち、ハッシュ値が異なる複数のフレーム画像を各ハッシュ値に関連付けて記憶させる一方、ハッシュ値が同じ複数のフレーム画像についてはその中の1つのみを記憶させて他は削除するようにしている。
特に、複数の動画データ毎に別のハッシュテーブルを生成して記憶させ、ある動画データについて算出されたハッシュ値が、複数の動画データ毎に生成された複数のハッシュテーブルの何れか少なくとも1つに既に記憶されているか否かを判定し、何れのハッシュテーブルにも記憶されていないと判定された場合に限り、当該ハッシュ値に対応するフレーム画像を記憶させるようにしている。
In order to solve the above-described problems, in the present invention, a hash value is calculated from each frame image constituting the moving image data, and a plurality of hash values calculated for each frame image are listed in the order of each frame image. A hash table is generated and stored. In addition, among each frame image, a plurality of frame images having different hash values are stored in association with each hash value, while for a plurality of frame images having the same hash value, only one of them is stored and the others are deleted. Like to do.
In particular, another hash table is generated and stored for each of the plurality of moving image data, and the hash value calculated for the certain moving image data is stored in at least one of the plurality of hash tables generated for each of the plurality of moving image data. It is determined whether or not it has already been stored, and the frame image corresponding to the hash value is stored only when it is determined that it has not been stored in any hash table.
上記のように構成した本発明によれば、動画データを構成する各フレーム画像がデータ量の極めて小さいハッシュ値に置き換えられる。元のフレーム画像は、ハッシュ値から再現する際に必要なために保存されるが、ハッシュ値が同じ複数のフレーム画像についてはその中の1つのみが記憶されて他は削除されるので、動画全体としてのデータ量は削減される。また、フレーム画像からハッシュ値への置き換えは可逆圧縮であるから、ハッシュ値から元のフレーム画像を完全に再現することが可能である。これにより、元画像の再現性(画質)を良好に保ったまま動画データの圧縮率を高めることができ、動画データの記憶容量を削減したり通信速度を速くしたりすることができる。 According to the present invention configured as described above, each frame image constituting the moving image data is replaced with a hash value having a very small data amount. The original frame image is saved because it is necessary for reproduction from the hash value, but only one of the frame images with the same hash value is stored and the others are deleted. The overall data volume is reduced. Also, since the replacement of the frame image with the hash value is lossless compression, the original frame image can be completely reproduced from the hash value. Thereby, the compression rate of the moving image data can be increased while maintaining the reproducibility (image quality) of the original image, and the storage capacity of the moving image data can be reduced or the communication speed can be increased.
(第1の実施形態)
以下、本発明の第1の実施形態を図面に基づいて説明する。図1は、第1の実施形態による動画圧縮装置を備えた動画圧縮伸長システムの構成例を示す全体構成図である。図1に示すように、第1の実施形態による動画圧縮伸長システムは、クライアント装置100および画像生成サーバ200を備え、両者をインターネット500などの通信ネットワークを介して接続可能に構成されている。(First embodiment)
DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, a first embodiment of the invention will be described with reference to the drawings. FIG. 1 is an overall configuration diagram illustrating a configuration example of a moving image compression / decompression system including a moving image compression device according to the first embodiment. As shown in FIG. 1, the moving image compression / decompression system according to the first embodiment includes a
図2は、第1の実施形態によるクライアント装置100の機能構成例を示すブロック図である。図2に示すように、第1の実施形態によるクライアント装置100は、その機能構成として、通信I/F部11、要求送信部12、圧縮データ受信部13、圧縮データ保存部14、動画伸長部15および第2の圧縮データ記憶部110を備えて構成されている。動画伸長部15は、その具体的な機能構成として、ハッシュ値読出部15aおよび動画再生部15bを備えている。
FIG. 2 is a block diagram illustrating a functional configuration example of the
上記各機能ブロック11〜15は、ハードウェア、DSP(Digital Signal Processor)、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、上記各機能ブロック11〜15は、実際にはコンピュータのCPU、RAM、ROMなどを備えて構成され、RAMやROM、ハードディスクまたは半導体メモリ等の記録媒体に記憶されたプログラムが動作することによって実現される。
Each of the
図3は、第1の実施形態による画像生成サーバ200の機能構成例を示すブロック図である。図3に示すように、第1の実施形態による画像生成サーバ200は、その機能構成として、通信I/F部21、要求受信部22、動画生成部23、動画圧縮部24、圧縮データ送信部25および圧縮データ記憶部210を備えて構成されている。動画圧縮部24は、その具体的な機能構成として、ハッシュ演算部24a、ハッシュテーブル生成部24bおよび画像間引部24cを備えている。
FIG. 3 is a block diagram illustrating a functional configuration example of the
上記各機能ブロック21〜25は、ハードウェア、DSP、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、上記各機能ブロック21〜25は、実際にはコンピュータのCPU、RAM、ROMなどを備えて構成され、RAMやROM、ハードディスクまたは半導体メモリ等の記録媒体に記憶されたプログラムが動作することによって実現される。
Each of the
クライアント装置100の通信I/F部11および画像生成サーバ200の通信I/F部21は、インターネット500を介して互いに通信を行うものである。クライアント装置100の要求送信部12は、インターネット500を介して画像生成サーバ200に画像取得要求を送信する。この画像取得要求は、例えば、クライアント装置100のユーザが図示しない操作部を操作することによって生成される。
The communication I /
画像生成サーバ200の要求受信部22は、クライアント装置100からインターネット500を介して送られてきた画像取得要求を受信する。動画生成部23は、要求受信部22により受信された画像取得要求に応じて、動画データを生成する。
The
例えば、動画生成部23は、画像生成サーバ200に接続されたスマートフォン(図示せず)を固定した状態のままカメラ撮影を行うことによって動画データを生成する。または、スマートフォンの画面を順次遷移させ、遷移させた各画面のキャプチャ処理を行うことによって動画データを生成する。
For example, the moving
ここで、カメラ撮影や画面キャプチャは、クライアント装置100から出力される1回の画像取得要求に対して複数回連続して行う。この場合、動画データの生成を開始してから所定時間が経過した時点で処理を終了するようにしてもよいし、次に処理停止命令がクライアント装置100から出力されるまで処理を継続するようにしてもよい。あるいは、クライアント装置100と画像生成サーバ200とのコネクションが切断されるまで処理を継続するようにしてもよい。
Here, camera shooting and screen capture are continuously performed a plurality of times in response to a single image acquisition request output from the
このように、スマートフォンによるカメラ撮影や画面キャプチャによって動画データを生成するのは、様々な機種のスマートフォンでカメラ撮影が問題なく行われているか否か、画面遷移が問題なく行われているか否か、スマートフォンにインストールされたアプリケーションが正常に動作しているか否かなどを、クライアント装置100から画像生成サーバ200にアクセスして遠隔から検証することができるようにするためである。
In this way, video data is generated by camera shooting and screen capture with smartphones, whether camera shooting is performed without problems with smartphones of various models, whether screen transition is performed without problems, This is because the
動画圧縮部24は、動画圧縮装置に相当するものであり、動画生成部23により生成された動画データに対して、ハッシュ演算部24a、ハッシュテーブル生成部24bおよび画像間引部24cの処理によって画像圧縮を行う。
The moving
ハッシュ演算部24aは、動画生成部23により生成された動画データを構成する各フレーム画像に対してハッシュ演算を行い、フレーム画像の同一性を特定可能な特徴量としてハッシュ値を算出する。なお、ハッシュ演算そのものに関しては、公知の手法を適用することが可能である。
The
ハッシュテーブル生成部24bは、ハッシュ演算部24aにより各フレーム画像について算出された複数のハッシュ値を各フレーム画像の順番に沿ってリスト化して成るハッシュテーブルを生成し、これを圧縮データ記憶部210に記憶させる。
The hash
画像間引部24cは、動画生成部23により生成された動画データを構成する各フレーム画像のうち、ハッシュ演算部24aにより算出されたハッシュ値が異なる複数のフレーム画像をそれぞれハッシュテーブル内の異なる各ハッシュ値に関連付けて圧縮データ記憶部210に記憶させる。一方、動画データを構成する各フレーム画像のうち、ハッシュ値が同じ複数のフレーム画像については、その中の1つのみをハッシュテーブル内の同じ各ハッシュ値に関連付けて圧縮データ記憶部210に記憶させる。
The
図4は、圧縮データ記憶部210に記憶されるハッシュテーブルおよびフレーム画像の一例を模式的に示すイメージ図である。図4(a)は、ハッシュテーブル生成部24bにより記憶されるハッシュテーブルの一例を示す。図4(b)は、画像間引部24cにより記憶されるフレーム画像の一例を示す。このハッシュテーブルおよびフレーム画像のセットを動画の圧縮データとする。
FIG. 4 is an image diagram schematically illustrating an example of a hash table and a frame image stored in the compressed
図4(a)に示すように、ハッシュテーブル生成部24bは、動画データを構成する各フレーム画像についてハッシュ演算部24aにより算出された複数のハッシュ値を、各フレーム画像の順番に沿って順次記憶させていく。
As shown in FIG. 4A, the hash
上述のように、動画生成部23がカメラ撮影や画面キャプチャによって動画データを生成する場合、各フレーム画像の中には同じものが多数存在し得る。ただし、ハッシュテーブル生成部24bは、同じフレーム画像であるか否かを問わず、全てのフレーム画像についてハッシュ演算部24aにより算出されたハッシュ値をそのフレーム画像の順序に沿ってリスト化し、ハッシュテーブルに記憶させていく。
As described above, when the moving
これに対して、画像間引部24cは、図4(b)に示すように、ハッシュ値が異なる複数のフレーム画像については、それらを全てハッシュテーブル内の各ハッシュ値に関連付けて記憶させる。一方、ハッシュ値が同じ複数のフレーム画像については、その中の1つのみ(例えば、最初に記憶させたフレーム画像)をハッシュテーブル内の同じ各ハッシュ値に関連付けて記憶させる。
On the other hand, as shown in FIG. 4B, the
すなわち、画像間引部24cは、ハッシュ演算部24aによりハッシュ値が算出される毎に、そのハッシュ値が圧縮データ記憶部210のハッシュテーブルに既に記憶されているか否かを判定し、記憶されていないと判定された場合に限り、当該ハッシュ値に対応するフレーム画像を圧縮データ記憶部210に追加して記憶させる。
That is, every time a hash value is calculated by the
一方、圧縮データ記憶部210のハッシュテーブルにハッシュ値が既に記憶されていると判定された場合、画像間引部24cは当該ハッシュ値に対応するフレーム画像を圧縮データ記憶部210に追加して記憶させず、既に記憶されているフレーム画像とハッシュ値との関連付けのみ行う。このように、圧縮データ記憶部210に記憶させるフレーム画像を間引くことにより画像圧縮を行い、データ容量の削減を図っている。
On the other hand, when it is determined that the hash value is already stored in the hash table of the compressed
圧縮データ送信部25は、動画圧縮部24により生成されて圧縮データ記憶部210に記憶された圧縮データ、すなわち、ハッシュテーブルおよび当該ハッシュテーブルの各ハッシュ値に関連付けられた複数のフレーム画像を、インターネット500を介してクライアント装置100に送信する。
The compressed
なお、この圧縮データの送信は、圧縮データ記憶部210に記憶されるハッシュテーブルが完成した後に行う必要は必ずしもない。すなわち、1つのハッシュ値が圧縮データ記憶部210のハッシュテーブルに追加される都度、圧縮データを順次送信するようにしてもよい。また、画像間引部24cの処理が行えていればよく、圧縮データ記憶部210に対する圧縮データの記憶については非同期で行ってもよい。また、圧縮データ送信部25は、ハッシュ値およびフレーム画像以外に、フレーム画像の相対時刻等のメタデータを合わせて送信するようにしてもよい。
The compressed data need not be transmitted after the hash table stored in the compressed
ここで、圧縮データ送信部25は、画像間引部24cによりハッシュ値とフレーム画像との組が圧縮データ記憶部210に記憶された場合には、そのハッシュ値とフレーム画像との組を圧縮データとしてクライアント装置100に送信する。一方、フレーム画像が間引かれてハッシュ値のみが圧縮データ記憶部210に記憶された場合は、そのハッシュ値のみを圧縮データとしてクライアント装置100に送信する。
Here, when the set of the hash value and the frame image is stored in the compressed
フレーム画像が間引かれてハッシュ値のみが圧縮データ記憶部210に記憶されている場合、それよりも前のフレームで既に同じフレーム画像がクライアント装置100に送信されている。この場合は、データ量の小さいハッシュ値のみを送信してフレーム画像の送信を省略することにより、送信データ量の削減を図っている。
When the frame images are thinned out and only the hash value is stored in the compressed
クライアント装置100の圧縮データ受信部13は、画像生成サーバ200の圧縮データ送信部25により送信された圧縮データ(ハッシュ値とフレーム画像との組、またはハッシュ値のみ)を受信する。圧縮データ保存部14は、圧縮データ受信部13により受信された圧縮データを第2の圧縮データ記憶部110に記憶させる。
The compressed
ここで、圧縮データ受信部13が圧縮データとしてハッシュ値とフレーム画像との組を受信した場合、圧縮データ保存部14は、そのハッシュ値をハッシュテーブルに追加して記憶させるとともに、フレーム画像をそのハッシュ値に関連付けて記憶させる。
Here, when the compressed
一方、圧縮データ受信部13が圧縮データとしてハッシュ値のみを受信した場合、圧縮データ保存部14は、そのハッシュ値をハッシュテーブルに追加して記憶させるとともに、そのハッシュ値と同じハッシュ値に対して既に関連付けて記憶されているフレーム画像を、ハッシュテーブルに新たに追加したハッシュ値に関連付ける。これにより、第2の圧縮データ記憶部110に記憶される圧縮データも、図4に示したのと同様の状態となる。
On the other hand, when the compressed
動画伸長部15は、動画伸長装置に相当するものであり、第2の圧縮データ記憶部110に記憶された圧縮データに対して、ハッシュ値読出部15aおよび動画再生部15bの処理によって画像伸長を行う。ハッシュ値読出部15aは、画像生成サーバ200から送信されてきた圧縮データに基づき第2の圧縮データ記憶部110に記憶されたハッシュテーブルから、複数のハッシュ値を順次読み出す。
The
なお、このハッシュ値の読み出しは、第2の圧縮データ記憶部110に記憶されるハッシュテーブルが完成した後に行う必要は必ずしもない。すなわち、圧縮データ保存部14により1つのハッシュ値が第2の圧縮データ記憶部110のハッシュテーブルに追加される都度、そのハッシュ値を順次読み出すようにしてもよい。このようにすれば、クライアント装置100から画像生成サーバ200に画像取得要求を送信してから、該当する動画の再生が開始されるまでの時間を短くすることができる。
The reading of the hash value is not necessarily performed after the hash table stored in the second compressed
動画再生部15bは、ハッシュ値読出部15aにより順次読み出された複数のハッシュ値に対応する複数のフレーム画像を第2の圧縮データ記憶部110から順次読み出して動画の再生を実行する。第2の圧縮データ記憶部110に記憶されているハッシュテーブルは、動画を構成する各フレーム画像の順序に沿ってハッシュ値をリスト化したものであるから、このハッシュ値をハッシュ演算部24aにより順番に読み出して、各ハッシュ値に対応するフレーム画像を動画再生部15bが順番に再生することにより、動画の再生を行うことができる。
The moving
図5は、以上のように構成した第1の実施形態による動画圧縮伸長システムの動作例を示すフローチャートである。まず、クライアント装置100の要求送信部12は、インターネット500を介して画像生成サーバ200に画像取得要求を送信する(ステップS1)。画像生成サーバ200では、この画像取得要求を要求受信部22にて受信すると、動画生成部23が画像取得要求に応じた動画データのフレーム画像を生成する(ステップS2)。
FIG. 5 is a flowchart showing an operation example of the moving picture compression / decompression system according to the first embodiment configured as described above. First, the
次に、ハッシュ演算部24aは、動画生成部23により生成された動画データのフレーム画像に対してハッシュ演算を行い、フレーム画像の同一性を特定可能な特徴量としてハッシュ値を算出する(ステップS3)。ここで、ハッシュテーブル生成部24bは、ハッシュ演算部24aにより算出されたハッシュ値と同じハッシュ値が、今回の動画生成に関して圧縮データ記憶部210に記憶されたハッシュテーブル内に既に存在するか否かを判定する(ステップS4)。
Next, the
ハッシュ演算部24aにより算出されたハッシュ値がハッシュテーブル内に既に存在する場合、ハッシュテーブル生成部24bは、そのハッシュ値をハッシュテーブルに追加して記憶させるとともに、ハッシュテーブル内に既に存在するハッシュ値に関連付けて圧縮データ記憶部210に既に記憶されているフレーム画像に対して、新たに追加したハッシュ値を関連付ける(ステップS5)。そして、圧縮データ送信部25は、ステップS3でハッシュ演算部24aにより算出されたハッシュ値のみを、圧縮データ記憶部210から読み出してクライアント装置100に送信する(ステップS6)。
When the hash value calculated by the
一方、ハッシュ演算部24aにより算出されたハッシュ値がハッシュテーブル内に存在しない場合、ハッシュテーブル生成部24bがそのハッシュ値をハッシュテーブルに追加して記憶させる。また、画像間引部24cは、ハッシュテーブルに新たに追加されたハッシュ値に関連付けて、ステップS2で動画生成部23により生成されたフレーム画像を圧縮データ記憶部210に記憶させる(ステップS7)。そして、圧縮データ送信部25は、ステップS2で動画生成部23により生成されたフレーム画像およびステップS3でハッシュ演算部24aにより算出されたハッシュ値との組を、圧縮データ記憶部210から読み出してクライアント装置100に送信する(ステップS8)。
On the other hand, if the hash value calculated by the
その後、動画生成部23は、動画データの生成を終了するか否かを判定する(ステップS9)。すなわち、動画生成部23は、動画データの生成を開始してから所定時間が経過したか否か、処理停止命令がクライアント装置100から送られてきたか否か、クライアント装置100とのコネクションが切断されたか否かなどを判定する。ここで、動画データの生成をまだ終了しない場合、処理はステップS2に戻り、次のフレーム画像の生成を行う。一方、動画データの生成を終了する場合、画像生成サーバ200における処理は終了する。
Thereafter, the moving
クライアント装置100では、上記ステップS1で画像取得要求を画像生成サーバ200に送信した後、圧縮データ受信部13は、画像生成サーバ200の圧縮データ送信部25により送信された圧縮データ(ハッシュ値とフレーム画像との組、またはハッシュ値のみ)を受信する(ステップS10)。
In the
ここで、圧縮データ保存部14は、圧縮データ受信部13が圧縮データとしてハッシュ値とフレーム画像との組を受信したか否かを判定する(ステップS11)。圧縮データ受信部13がハッシュ値とフレーム画像との組を受信した場合、圧縮データ保存部14は、第2の圧縮データ記憶部110に対して、ハッシュ値をハッシュテーブルに追加して記憶させるとともに、フレーム画像をそのハッシュ値に関連付けて記憶させる(ステップS12)。
Here, the compressed
一方、圧縮データ受信部13が圧縮データとしてハッシュ値のみを受信した場合、圧縮データ保存部14は、第2の圧縮データ記憶部110に対して、ハッシュ値をハッシュテーブルに追加して記憶させるとともに、そのハッシュ値と同じハッシュ値に対して既に関連付けて記憶されているフレーム画像を、ハッシュテーブルに新たに追加したハッシュ値に関連付ける(ステップS13)。
On the other hand, when the compressed
次に、ハッシュ値読出部15aは、ステップS12またはステップS13で第2の圧縮データ記憶部110のハッシュテーブルに追加して記憶されたハッシュ値を読み出す(ステップS14)。そして、動画再生部15bは、ハッシュ値読出部15aにより読み出されたハッシュ値に対応するフレーム画像を第2の圧縮データ記憶部110から読み出して再生する(ステップS15)。
Next, the hash
その後、動画再生部15bは、動画データの再生を終了するか否かを判定する(ステップS16)。すなわち、動画再生部15bは、動画データの生成を開始してから所定時間が経過したか否か、処理停止命令をクライアント装置100に送信したか否か、画像生成サーバ200とのコネクションが切断されたか否かなどを判定する。ここで、動画データの再生をまだ終了しない場合、処理はステップS10に戻り、次のフレームに関する圧縮データの受信を行う。一方、動画データの再生を終了する場合、クライアント装置100における処理は終了する。
Thereafter, the moving
以上詳しく説明したように、第1の実施形態の動画圧縮伸長システムでは、動画データを構成する各フレーム画像からハッシュ値を算出し、各フレーム画像について算出された複数のハッシュ値を各フレーム画像の順番に沿ってリスト化して成るハッシュテーブルを生成して記憶させる。また、各フレーム画像のうち、ハッシュ値が異なる複数のフレーム画像を各ハッシュ値に関連付けて記憶させる一方、ハッシュ値が同じ複数のフレーム画像についてはその中の1つのみを記憶させて他は削除するようにしている。 As described above in detail, in the moving image compression / decompression system according to the first embodiment, a hash value is calculated from each frame image constituting the moving image data, and a plurality of hash values calculated for each frame image are calculated for each frame image. A hash table formed by listing in order is generated and stored. In addition, among each frame image, a plurality of frame images having different hash values are stored in association with each hash value, while for a plurality of frame images having the same hash value, only one of them is stored and the others are deleted. Like to do.
このように構成した第1の実施形態によれば、動画データを構成する各フレーム画像がデータ量の極めて小さいハッシュ値に置き換えられる。元のフレーム画像は、ハッシュ値から再現する際に必要なために保存されるが、ハッシュ値が同じ複数のフレーム画像についてはその中の1つのみが記憶されて他は削除されるので、動画全体としてのデータ量は削減される。また、フレーム画像からハッシュ値への置き換えは可逆圧縮であるから、ハッシュ値から元のフレーム画像を完全に再現することが可能である。 According to the first embodiment configured as described above, each frame image constituting the moving image data is replaced with a hash value having an extremely small data amount. The original frame image is saved because it is necessary for reproduction from the hash value, but only one of the frame images with the same hash value is stored and the others are deleted. The overall data volume is reduced. Also, since the replacement of the frame image with the hash value is lossless compression, the original frame image can be completely reproduced from the hash value.
これにより、元画像の再現性(画質)を良好に保ったまま動画データの圧縮率を高めることができ、第2の圧縮データ記憶部110,210に記憶する動画データの容量を削減したり、画像生成サーバ200からクライアント装置100に送信するフレーム画像の量を削減して通信速度を速くしたりすることができる。
Accordingly, the compression rate of the moving image data can be increased while maintaining the reproducibility (image quality) of the original image, and the capacity of the moving image data stored in the second compressed
(第2の実施形態)
以下、本発明の第2の実施形態を図面に基づいて説明する。第2の実施形態による動画圧縮装置を備えた動画圧縮伸長システムの構成は、図1と同様である。(Second Embodiment)
Hereinafter, a second embodiment of the present invention will be described with reference to the drawings. The configuration of the moving image compression / decompression system including the moving image compression apparatus according to the second embodiment is the same as that shown in FIG.
図6は、第2の実施形態によるクライアント装置100機能構成例を示すブロック図である。なお、この図6において、図2に示した符号と同一の符号を付したものは同一の機能を有するものであるので、ここでは重複する説明を省略する。図6に示すように、第2の実施形態によるクライアント装置100は、その機能構成として、問い合わせ応答部16を更に備えている。
FIG. 6 is a block diagram illustrating a functional configuration example of the
図7は、第2の実施形態による画像生成サーバ200の機能構成例を示すブロック図である。なお、この図7において、図3に示した符号と同一の符号を付したものは同一の機能を有するものであるので、ここでは重複する説明を省略する。図7に示すように、第2の実施形態による画像生成サーバ200は、その機能構成として、特徴量判定部26を更に備えている。また、画像間引部24cおよび圧縮データ送信部25に代えて、画像間引部24c’および圧縮データ送信部25’を備えている。
FIG. 7 is a block diagram illustrating a functional configuration example of the
画像間引部24c’は、今回の動画生成に関して圧縮データ記憶部210に記憶されたハッシュテーブルに限らず、過去の動画生成時に記憶されたハッシュテーブルも含めて圧縮データ記憶部210に既に記憶されている複数のハッシュテーブルを対象として、ハッシュ演算部24aにより今回算出されたハッシュ値と同じハッシュ値が既に記憶されているか否かを判定する。そして、既に同じハッシュ値が記憶されている場合は、そのハッシュ値に対応するフレーム画像の圧縮データ記憶部210への記憶を間引く。
The
すなわち、画像間引部24c’は、ある動画データについてハッシュ演算部24aによりハッシュ値が算出される毎に、そのハッシュ値が、複数の動画データ毎に生成された複数のハッシュテーブルの何れか少なくとも1つに既に記憶されているか否かを判定する。そして、何れのハッシュテーブルにもそのハッシュ値が記憶されていないと判定された場合に限り、当該ハッシュ値に対応するフレーム画像を圧縮データ記憶部210に記憶させる。
That is, every time a hash value is calculated by the
図8は、第2の実施形態において圧縮データ記憶部210に記憶される複数のハッシュテーブルおよびフレーム画像の一例を模式的に示すイメージ図である。図8(a)に示すように、ハッシュテーブル生成部24bは、複数の動画データ毎に別のハッシュテーブルを生成して圧縮データ記憶部210に記憶させる。
FIG. 8 is an image diagram schematically showing an example of a plurality of hash tables and frame images stored in the compressed
また、図8(b)に示すように、画像間引部24c’は、全てのハッシュテーブルを通してハッシュ値が異なるフレーム画像については、それらのフレーム画像を全てハッシュテーブル内の各ハッシュ値に関連付けて記憶させる。一方、画像間引部24c’は、同じハッシュテーブル内または異なるハッシュテーブル内でハッシュ値が同じ複数のフレーム画像については、その中の1つのみを同じ各ハッシュ値に関連付けて記憶させる。
Further, as shown in FIG. 8B, the
特徴量判定部26は、ハッシュ演算部24aにより各フレーム画像について順次算出されるハッシュ値が、クライアント装置100に記憶されているか否かを判定する。具体的には、特徴量判定部26は、ハッシュ演算部24aにより算出されたハッシュ値を、通信I/F部21を介してクライアント装置100に送信し、それと同じハッシュ値がクライアント装置100の第2の圧縮データ記憶部110に記憶されているかを問い合わせる。そして、その結果としてクライアント装置100から送られてくる応答内容に基づいて、ハッシュ値がクライアント装置100に記憶されているか否かを判定する。そして、その判定結果を圧縮データ送信部25’に通知する。
The feature
圧縮データ送信部25’は、特徴量判定部26によりハッシュ値がクライアント装置100に記憶されていないと判定された場合に限り、そのハッシュ値およびそれに関連付けられたフレーム画像をクライアント装置100に送信する。一方、ハッシュ値がクライアント装置100に既に記憶されていると判定された場合、圧縮データ送信部25’は、そのハッシュ値のみをクライアント装置100に送信する。なお、特徴量判定部26による問い合わせの際にハッシュ値はクライアント装置100に既に送信されているので、改めてそのハッシュ値を送信することを省略してもよい。
The compressed
例えば、クライアント装置100が画像生成サーバ200に対して複数の画像取得要求を送信し、複数の動画データに関する圧縮データ(ハッシュテーブルおよびフレーム画像)を取得して第2の圧縮データ記憶部110に記憶させている場合、今回画像生成サーバ200からクライアント装置100に送信しようとしているハッシュ値とフレーム画像が既にクライアント装置100に記憶されている場合があり得る。この場合は、データ量の小さいハッシュ値のみを送信してフレーム画像の送信を省略することにより、送信データ量の削減を図っている。
For example, the
クライアント装置100の問い合わせ応答部16は、画像生成サーバ200の特徴量判定部26から送信されてくる問い合わせに対して応答する処理を行う。すなわち、問い合わせ応答部16は、特徴量判定部26から送信されてくるハッシュ値を受信し、これが第2の圧縮データ記憶部110に既に記憶されているかどうかを確認する。そして、記憶されているか否かの確認結果を画像生成サーバ200の特徴量判定部26に返信する。
The
図9は、以上のように構成した第2の実施形態による動画圧縮伸長システムの動作例を示すフローチャートである。まず、クライアント装置100の要求送信部12は、インターネット500を介して画像生成サーバ200に画像取得要求を送信する(ステップS21)。画像生成サーバ200では、この画像取得要求を要求受信部22にて受信すると、動画生成部23が画像取得要求に応じた動画データのフレーム画像を生成する(ステップS22)。
FIG. 9 is a flowchart showing an operation example of the moving picture compression / decompression system according to the second embodiment configured as described above. First, the
次に、ハッシュ演算部24aは、動画生成部23により生成された動画データのフレーム画像に対してハッシュ演算を行い、フレーム画像の同一性を特定可能な特徴量としてハッシュ値を算出する(ステップS23)。ここで、ハッシュテーブル生成部24bは、ハッシュ演算部24aにより算出されたハッシュ値と同じハッシュ値が、圧縮データ記憶部210に記憶されている複数のハッシュテーブル内に既に存在するか否かを判定する(ステップS24)。
Next, the
ハッシュ演算部24aにより算出されたハッシュ値が何れかのハッシュテーブル内に既に存在する場合、ハッシュテーブル生成部24bは、そのハッシュ値を今回の動画生成に関するハッシュテーブルに追加して記憶させるとともに、それと同じハッシュ値に関連付けて圧縮データ記憶部210に既に記憶されているフレーム画像に対して、新たに追加したハッシュ値を関連付ける(ステップS25)。
If the hash value calculated by the
一方、ハッシュ演算部24aにより算出されたハッシュ値が何れのハッシュテーブル内にも存在しない場合、ハッシュテーブル生成部24bがそのハッシュ値を今回の動画生成に関するハッシュテーブルに追加して記憶させる。また、画像間引部24c’は、ハッシュテーブルに新たに追加されたハッシュ値に関連付けて、ステップS22で動画生成部23により生成されたフレーム画像を圧縮データ記憶部210に記憶させる(ステップS26)。
On the other hand, if the hash value calculated by the
ここで、特徴量判定部26は、ハッシュ演算部24aにより算出された各ハッシュ値をクライアント装置100に送信し、それと同じハッシュ値がクライアント装置100に既に記憶されているかを問い合わせる(ステップS27)。クライアント装置100の問い合わせ応答部16は、画像生成サーバ200から受信したハッシュ値が第2の圧縮データ記憶部110に既に記憶されているかどうかを確認する(ステップS28)。
Here, the feature
ここで、問い合わせに関するハッシュ値が第2の圧縮データ記憶部110に記憶されている場合、問い合わせ応答部16は、ハッシュ値がクライアント装置100に記憶されていることを、問い合わせに対する確認結果として画像生成サーバ200の特徴量判定部26に返信する(ステップS29)。
Here, when the hash value related to the inquiry is stored in the second compressed
一方、問い合わせに関するハッシュ値が第2の圧縮データ記憶部110に記憶されていない場合、問い合わせ応答部16は、ハッシュ値がクライアント装置100に記憶されていないことを、問い合わせに対する確認結果として画像生成サーバ200の特徴量判定部26に返信する(ステップS30)。
On the other hand, when the hash value related to the inquiry is not stored in the second compressed
クライアント装置100から問い合わせに対する応答を受け取った画像生成サーバ200では、特徴量判定部26が、その応答内容に基づいて、ハッシュ値がクライアント装置100に記憶されているか否かを判定する(ステップS31)。
In the
ここで、ハッシュ値がクライアント装置100に記憶されていると特徴量判定部26にて判定された場合、圧縮データ送信部25’は、ステップS23でハッシュ演算部24aにより算出されたハッシュ値のみを、圧縮データ記憶部210から読み出してクライアント装置100に送信する(ステップS32)。なお、上述したように、このステップS32を省略し、ステップS27で問い合わせの際に送信したハッシュ値をクライアント装置100で利用するようにしてもよい。
Here, when the feature
一方、ハッシュ値がクライアント装置100に記憶されていないと特徴量判定部26にて判定された場合、圧縮データ送信部25’は、ステップ22で動画生成部23により生成されたフレーム画像およびステップS23でハッシュ演算部24aにより算出されたハッシュ値との組を、圧縮データ記憶部210から読み出してクライアント装置100に送信する(ステップS33)。
On the other hand, when the feature
その後、動画生成部23は、動画データの生成を終了するか否かを判定する(ステップS34)。ここで、動画データの生成をまだ終了しない場合、処理はステップS22に戻り、次のフレーム画像の生成を行う。一方、動画データの生成を終了する場合、画像生成サーバ200における処理は終了する。
Thereafter, the moving
クライアント装置100では、上記ステップS29またはステップS30において応答を行った後、圧縮データ受信部13は、画像生成サーバ200の圧縮データ送信部25’により送信された圧縮データ(ハッシュ値とフレーム画像との組、またはハッシュ値のみ)を受信する(ステップS35)。
In the
ここで、圧縮データ保存部14は、圧縮データ受信部13が圧縮データとしてハッシュ値とフレーム画像との組を受信したか否かを判定する(ステップS36)。圧縮データ受信部13がハッシュ値とフレーム画像との組を受信した場合、圧縮データ保存部14は、第2の圧縮データ記憶部110に対して、今回の動画再生に関するハッシュテーブルにハッシュ値を追加して記憶させるとともに、フレーム画像をそのハッシュ値に関連付けて記憶させる(ステップS37)。
Here, the compressed
一方、圧縮データ受信部13が圧縮データとしてハッシュ値のみを受信した場合、圧縮データ保存部14は、第2の圧縮データ記憶部110に対して、今回の動画再生に関するハッシュテーブルにハッシュ値を追加して記憶させるとともに、そのハッシュ値と同じハッシュ値に対して既に関連付けて記憶されているフレーム画像を、ハッシュテーブルに新たに追加したハッシュ値に関連付ける(ステップS38)。
On the other hand, when the compressed
次に、ハッシュ値読出部15aは、ステップS37またはステップS38で第2の圧縮データ記憶部110のハッシュテーブルに追加して記憶されたハッシュ値を読み出す(ステップS39)。そして、動画再生部15bは、ハッシュ値読出部15aにより読み出されたハッシュ値に対応するフレーム画像を第2の圧縮データ記憶部110から読み出して再生する(ステップS40)。
Next, the hash
その後、動画再生部15bは、動画データの再生を終了するか否かを判定する(ステップS41)。ここで、動画データの再生をまだ終了しない場合、処理はステップS35に戻り、次のフレームに関する圧縮データの受信を行う。一方、動画データの再生を終了する場合、クライアント装置100における処理は終了する。
Thereafter, the moving
以上詳しく説明したように、第2の実施形態の動画圧縮伸長システムでは、ハッシュ演算部24aにより算出されたハッシュ値と同じ値を有するハッシュ値が、圧縮データ記憶部210に記憶されている複数のハッシュテーブルのうち少なくとも何れか1つに含まれている場合は、そのハッシュ値に対応するフレーム画像の圧縮データ記憶部210への記憶を間引くようにしている。
As described above in detail, in the moving image compression / decompression system according to the second embodiment, a plurality of hash values having the same value as the hash value calculated by the
また、第2の実施形態では、画像生成サーバ200にて生成された動画のフレーム画像が、それより前の時点で画像生成サーバ200からクライアント装置100に既に送信されて第2の圧縮データ記憶部110に記憶されている場合は、ハッシュ値を用いた問い合せによる結果に基づいて、当該フレーム画像は画像生成サーバ200からクライアント装置100に送信しないようにしている。
Further, in the second embodiment, the frame image of the moving image generated by the
このように構成した第2の実施形態によれば、第2の圧縮データ記憶部110,210に記憶するフレーム画像の量をより少なくして動画データの容量をさらに削減することができる。また、画像生成サーバ200からクライアント装置100に送信するフレーム画像の量をより少なくして通信速度をさらに速くすることができる。
According to the second embodiment configured as described above, it is possible to further reduce the capacity of moving image data by reducing the amount of frame images stored in the second compressed
なお、同じハッシュ値に対応するフレーム画像の圧縮データ記憶部210への記憶は間引かず、フレーム画像の送信を間引くのみとすることも可能である。
It should be noted that frame images corresponding to the same hash value may not be stored in the compressed
(第3の実施形態)
以下、本発明の第3の実施形態を図面に基づいて説明する。図10は、第3の実施形態による動画圧縮装置を備えた動画圧縮伸長システムの構成例を示す全体構成図である。なお、この図10において、図1に示した符号と同一の符号を付したものは同一の機能を有するものであるので、ここでは重複する説明を省略する。(Third embodiment)
Hereinafter, a third embodiment of the present invention will be described with reference to the drawings. FIG. 10 is an overall configuration diagram illustrating a configuration example of a moving image compression / decompression system including a moving image compression device according to the third embodiment. Note that in FIG. 10, those given the same reference numerals as those shown in FIG. 1 have the same functions, and thus redundant description is omitted here.
図10に示すように、第3の実施形態による動画圧縮伸長システムは、クライアント装置100、画像生成サーバ200および画像保存サーバ300を備えている。クライアント装置100、画像生成サーバ200および画像保存サーバ300は、互いにインターネット500を介して接続可能に構成されている。
As shown in FIG. 10, the moving image compression / decompression system according to the third embodiment includes a
図11は、第3の実施形態によるクライアント装置100の機能構成例を示すブロック図である。なお、この図11において、図6に示した符号と同一の符号を付したものは同一の機能を有するものであるので、ここでは重複する説明を省略する。
FIG. 11 is a block diagram illustrating a functional configuration example of the
図11に示すように、第3の実施形態によるクライアント装置100は、その機能構成として、ハッシュリスト取得部17、ハッシュ値存否判定部18およびフレーム画像取得部19を更に備えている。また、動画再生部15bに代えて動画再生部15b”を備えている。なお、第1の圧縮データ受信部13および第1の圧縮データ保存部14は、図6に示した圧縮データ受信部13および圧縮データ保存部14と同じ機能を有するものである。
As shown in FIG. 11, the
図12は、第3の実施形態による画像生成サーバ200の機能構成例を示すブロック図である。なお、この図12において、図7に示した符号と同一の符号を付したものは同一の機能を有するものであるので、ここでは重複する説明を省略する。
FIG. 12 is a block diagram illustrating a functional configuration example of the
図12に示すように、第3の実施形態による画像生成サーバ200は、その機能構成として、第2の圧縮データ送信部27、ハッシュリスト送信部28および問い合わせ応答部29を更に備えている。なお、第1の圧縮データ送信部25’は、図7に示した圧縮データ送信部25’と同じ機能を有するものである。
As shown in FIG. 12, the
図13は、第3の実施形態による画像保存サーバ300の機能構成例を示すブロック図である。図13に示すように、第3の実施形態による画像保存サーバ300は、その機能構成として、通信インタフェース部31、第2の圧縮データ受信部32、第2の圧縮データ保存部33、要求受信部34、フレーム画像送信部35、問い合わせ応答部36および第3の圧縮データ記憶部310を備えている。
FIG. 13 is a block diagram illustrating a functional configuration example of the
画像生成サーバ200の第2の圧縮データ送信部27は、動画圧縮部24により生成され圧縮データ記憶部210に記憶された圧縮データ(ハッシュ値および当該ハッシュ値に関連付けられたフレーム画像)を、インターネット500を介して画像保存サーバ300に送信する。
The second compressed data transmission unit 27 of the
第2の圧縮データ送信部27が画像保存サーバ300に送信する圧縮データは、第1の圧縮データ送信部25’がクライアント装置100に送信する圧縮データと同じではない。また、送信するタイミングも同じではない。例えば、第2の圧縮データ送信部27は、よく使われるフレーム画像とそれに対応するハッシュ値との組を、第1の圧縮データ送信部25’とは非同期で画像保存サーバ300に送信する。
The compressed data transmitted from the second compressed data transmission unit 27 to the
具体的には、第2の圧縮データ送信部27は、圧縮データ記憶部210の記憶内容を監視して、1つのフレーム画像に対して関連付けられるハッシュ値の数をカウントし、所定数(例えば、3個)以上となった場合に、そのフレーム画像とハッシュ値との組を画像保存サーバ300に送信する。
Specifically, the second compressed data transmission unit 27 monitors the storage content of the compressed
ハッシュリスト送信部28は、クライアント装置100のハッシュリスト取得部17から送られてくるハッシュリスト取得要求に応じて、圧縮データ記憶部210にハッシュテーブルとして記憶されているハッシュ値のリストをクライアント装置100に送信する。後述するように、ハッシュリスト取得要求の中には、圧縮データ記憶部210に記憶されている複数のハッシュテーブルのうちどのハッシュテーブルの取得を要求するかを特定するための情報が含まれている。
In response to the hash list acquisition request sent from the hash
画像保存サーバ300の通信I/F部31は、インターネット500を介してクライアント装置100および画像生成サーバ200と互いに通信を行うものである。第2の圧縮データ受信部32は、画像生成サーバ200の第2の圧縮データ送信部27により送信された圧縮データを受信する。第2の圧縮データ保存部33は、第2の圧縮データ受信部33により受信された圧縮データを第3の圧縮データ記憶部310に記憶させる。
The communication I /
要求受信部34は、クライアント装置100のフレーム画像取得部19からインターネット500を介してハッシュ値と共に送られてくる画像取得要求を受信する。フレーム画像送信部35は、要求受信部34がハッシュ値と共に画像取得要求を受信した場合、当該ハッシュ値に関連付けられたフレーム画像を第3の圧縮データ記憶部310から読み出してクライアント装置100に送信する。
The
クライアント装置100のハッシュリスト取得部17は、ユーザによる図示しない操作部の操作に応じて、ハッシュリスト取得要求を画像生成サーバ200に送信することにより、画像生成サーバ200から圧縮データ記憶部210のハッシュテーブルに格納されたハッシュ値のリストを取得する。
The hash
ここで、ユーザは、圧縮データ記憶部210に記憶されている複数のハッシュテーブルの中から所望のハッシュテーブルを指定することが可能である。その指定方法は任意である。例えば、画像生成サーバ200から提供されてクライアント装置100のモニタに表示される所定の入力画面を通じて、圧縮データ記憶部210に記憶されている複数のハッシュテーブルの一覧の中から何れかを指定する操作を行うことにより、所望のハッシュテーブルを指定することが可能である。
Here, the user can designate a desired hash table from among a plurality of hash tables stored in the compressed
なお、ハッシュテーブルの一覧として、ハッシュ値を表示したりハッシュテーブルの識別情報等を表示したりしても、ユーザにはそのハッシュテーブルがどの動画に関するものかが分かりにくい。そこで、例えばハッシュテーブルの先頭に記憶されているハッシュ値に関連付けられたフレーム画像をサムネイル画像として一覧表示するようにしてもよい。 Note that even if a hash value is displayed as a list of hash tables or identification information of the hash table is displayed, it is difficult for the user to know which moving image the hash table relates to. Therefore, for example, frame images associated with the hash value stored at the head of the hash table may be displayed as a list of thumbnail images.
あるいは、要求送信部12により画像取得要求を画像生成サーバ200に送信する際に、ユーザが図示しない操作部を操作して所望の情報(例えば動画の名称など)を入力することにより、この所望の情報を画像取得要求と共に画像生成サーバ200に送信する。そして、圧縮データ記憶部210に動画データのハッシュテーブルを記憶させる際に、当該所望の情報を関連付けて記憶させ、これをハッシュテーブルの一覧に表示させるようにしてもよい。
Alternatively, when the
ハッシュ値存否判定部18は、ハッシュリスト取得部17により取得されたハッシュリストに含まれるハッシュ値が、クライアント装置100の第2の第2の圧縮データ記憶部110、画像保存サーバ300の第3の圧縮データ記憶部310、画像生成サーバ200の圧縮データ記憶部210の何れかに既に記憶されているか否かを、クライアント装置100からのネットワーク距離が近い順に確認する。これを1つ1つのハッシュ値または複数のハッシュ値について順次行う。
The hash value
ここで、ネットワーク距離とは、あるノードから出発して他のあるノードに到達するまでの通信経路の途中に置かれている中継装置を介したラウンドトリップ時間を意味する。クライアント装置100を出発ノードとした場合、ネットワーク距離が最も近いのはクライアント装置100自身である。一方、画像生成サーバ200および画像保存サーバ300のどちらの方がクライアント装置100からのネットワーク距離が近いかは状況による。
Here, the network distance means a round trip time through a relay device placed in the middle of a communication path from a certain node to a certain other node. When the
なお、画像生成サーバ200および画像保存サーバ300が設置されている地域や国の情報をハッシュ値存否判定部18が各サーバ200,300から取得して、その地域や国までの物理的距離に応じて、どちらの方がネットワーク距離が近いかを推定するようにしてもよい。以下では、画像保存サーバ300の方が画像生成サーバ200よりもクライアントからのネットワーク距離が近いものとして説明する。
It should be noted that the hash value
この場合、ハッシュ値存否判定部18は、ハッシュリスト取得部17により取得されたハッシュリスト内の1つ目のハッシュ値について、まずはクライアント装置100の第1の第2の圧縮データ記憶部110に記憶されているか否かを確認する。第1の第2の圧縮データ記憶部110に1つ目のハッシュ値が記憶されていれば、ハッシュ値存否判定部18は当該1つ目のハッシュ値の存否判定動作をその時点で終了する。
In this case, the hash value
一方、第1の第2の圧縮データ記憶部110に1つ目のハッシュ値が記憶されていない場合、次にハッシュ値存否判定部18は、画像保存サーバ300の第3の圧縮データ記憶部310に1つ目のハッシュ値が記憶されているか否かを確認する。第3の圧縮データ記憶部310に1つ目のハッシュ値が記憶されていれば、ハッシュ値存否判定部18は当該1つ目のハッシュ値の存否判定動作をその時点で終了する。
On the other hand, when the first hash value is not stored in the first second compressed
また、第3の圧縮データ記憶部310にも1つ目のハッシュ値が記憶されていない場合、次にハッシュ値存否判定部18は、ネットワーク距離が最も遠い画像生成サーバ200の圧縮データ記憶部210に1つ目のハッシュ値が記憶されているか否かを確認する。
If the first hash value is not stored in the third compressed
ハッシュ値存否判定部18は、このような動作を、ハッシュリストに含まれる2つ目以降のハッシュ値についても1つ1つ順次行う。あるいは、複数のハッシュ値についてまとめて行ってもよい。また、画像生成サーバ200と画像保存サーバ300とに対して確認を同時に行うことも可能である。
The hash value presence /
ここで、画像生成サーバ200の圧縮データ記憶部210、画像保存サーバ300の第3の圧縮データ記憶部310にハッシュ値が既に記憶されているか否かの確認は、ハッシュ値存否判定部18から通信I/F部11を介して画像生成サーバ200および画像保存サーバ300に対してハッシュ値を送信して問い合わせを行うことによって実現する。
Here, whether or not the hash value is already stored in the compressed
画像生成サーバ200の問い合わせ応答部29および画像保存サーバ300の問い合わせ応答部36は、クライアント装置100のハッシュ値存否判定部18から送信されてくる問い合わせに対して応答する処理を行う。すなわち、問い合わせ応答部29,36は、ハッシュ値存否判定部18から送信されてくるハッシュ値を受信し、これが圧縮データ記憶部210,310に既に記憶されているかどうかを確認する。そして、記憶されているか否かの確認結果をクライアント装置100のハッシュ値存否判定部18に返信する。
The inquiry response unit 29 of the
フレーム画像取得部19は、クライアント装置100、画像生成サーバ200および画像保存サーバ300の各ノードのうち、ハッシュ値存否判定部18によりハッシュ値が既に記憶されていると判定されたノードからハッシュ値に関連付けられたフレーム画像を取得する。そして、取得したフレーム画像を順次動画再生部15b”に供給する。
The frame
動画再生部15b”は、第1および第2の実施形態で説明した機能に加えて、フレーム画像取得部19により取得された複数のフレーム画像を用いて動画の再生を実行する機能を有する。第1および第2の実施形態で説明した動画再生の機能は、動画生成部23により動画データを生成しながらそれを動画圧縮部24により圧縮してクライアント装置100に送信し、リアルタイムに再生する場合に利用する機能である。
In addition to the functions described in the first and second embodiments, the moving
これに対して、第3の実施形態で追加した動画再生の機能は、過去に生成した動画データを再度確認等のために再生する場合に利用して好適な機能である。この場合、ユーザが所望のハッシュテーブルを指定してハッシュリストを取得し、そのハッシュリスト内の各ハッシュ値に対応するフレーム画像をそれぞれ最もネットワーク距離の近いところから取得するので、各フレーム画像を取得する際の通信時間を短くすることができる。これにより、より短時間で動画の再生を行うことができる。 On the other hand, the movie playback function added in the third embodiment is a function that is suitable for use when playing back movie data generated in the past for confirmation again. In this case, the user obtains a hash list by specifying a desired hash table, and obtains each frame image corresponding to each hash value in the hash list from the nearest network distance. The communication time can be shortened. Thereby, a moving image can be reproduced in a shorter time.
なお、上記第3の実施形態では、クライアント装置100および画像保存サーバ300をそれぞれ1台ずつ備える構成について説明したが、複数のクライアント装置100および複数の画像保存サーバ300を備えてもよい。例えば、複数のクライアント装置100どうしをLAN(Local Area Network)により接続するとともに、当該複数のクライアント装置100、画像生成サーバ200および複数の画像保存サーバ300をインターネット500により接続するようにしてもよい。
In the third embodiment, the configuration in which one
この場合、ハッシュ値存否判定部18は、自身のクライアント装置100、同じLAN内の別のクライアント装置100の順番でハッシュリスト内のハッシュ値の存否を判定した後、画像生成サーバ200および複数の画像保存サーバ300の中からネットワーク距離が近い方から順にハッシュ値の存否を判定する。
In this case, the hash value
また、上記第3の実施形態では、第2の圧縮データ送信部27は、よく使われるフレーム画像とそれに対応するハッシュ値との組を画像保存サーバ300に送信する例について説明したが、本発明はこれに限定されない。例えば、第1の圧縮データ送信部25が送信する圧縮データと同じ圧縮データを画像保存サーバ300に送信して保存するようにしてもよい。
In the third embodiment, the second compressed data transmission unit 27 has described an example in which a pair of frequently used frame images and corresponding hash values is transmitted to the
上記第1〜第3の実施形態では、動画生成部23により生成された動画データの各フレーム画像をそのまま画像間引部24cにより間引きながら圧縮データ記憶部210に記憶する例について説明したが、本発明はこれに限定されない。例えば、画像生成サーバ200は、動画データを構成する各フレーム画像について、フレーム内圧縮(JPEG、JPEG2000、WebP、HEVC−MSPなど)またはフレーム間圧縮(差分データの生成など)を行うことによってフレーム圧縮画像を生成する圧縮演算部を更に備え、ハッシュ演算部24a、ハッシュテーブル生成部24bおよび画像間引部24cは、フレーム画像に代えてフレーム圧縮画像を用いて処理を行うようにしてもよい。
In the first to third embodiments, the example in which each frame image of the moving image data generated by the moving
また、上記第1〜第3の実施形態では、クライアント装置100と画像生成サーバ200とがインターネット500で接続されたシステムを例に挙げて説明したが、本発明はこれに限定されない。例えば、図3の動画生成部23、動画圧縮部24および圧縮データ記憶部210と、図2の動画伸長部15とを1つのスタンドアロン型端末に備える構成としてもよい。
In the first to third embodiments, the system in which the
また、上記第1〜第3の実施形態では、スマートフォンのカメラ撮影や画面キャプチャによって動画データを生成する例について説明したが、本発明はこれに限定されない。すなわち、クライアント装置100から出力された画像取得要求に応じて画像生成サーバ200が動画データを生成したりデータベースから読み出したりするように成されたシステムに対して何れにも適用することが可能である。
Moreover, although the said 1st-3rd embodiment demonstrated the example which produces | generates moving image data by the camera photography and screen capture of a smart phone, this invention is not limited to this. That is, the present invention can be applied to any system in which the
また、上記第1〜第3の実施形態では、クライアント装置100と画像生成サーバ200との間をインターネット500で接続する例について示しているが、本発明はこれに限定されない。例えば、クライアント装置100と画像生成サーバ200との間は、有線・無線、LAN・WAN等を問わず、あらゆる通信ネットワークで接続することが可能である。
Moreover, although the said 1st-3rd embodiment showed about the example which connects between the
その他、上記第1〜第3の実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。 In addition, each of the first to third embodiments described above is merely an example of implementation in carrying out the present invention, and the technical scope of the present invention should not be construed as being limited thereto. It will not be. That is, the present invention can be implemented in various forms without departing from the gist or the main features thereof.
13 圧縮データ受信部
14 圧縮データ保存部
15 動画伸長部
15a ハッシュ値読出部
15b,15b” 動画再生部
16 問い合わせ応答部
17 ハッシュリスト取得部
18 ハッシュ値存否判定部
19 フレーム画像取得部
23 動画生成部
24 動画圧縮部
24a ハッシュ演算部
24b ハッシュテーブル生成部
24c,24c’ 画像間引部
25,25’ 圧縮データ送信部(第1の圧縮データ送信部)
26 特徴量判定部
27 第2の圧縮データ送信部
28 ハッシュリスト送信部
29 問い合わせ応答部
32 第2の圧縮データ受信部
33 第2の圧縮データ保存部
35 フレーム画像送信部
36 問い合わせ応答部DESCRIPTION OF
26 feature amount determination unit 27 second compressed
Claims (4)
上記ハッシュ演算部により上記各フレーム画像について算出された複数のハッシュ値を上記各フレーム画像の順番に沿ってリスト化して成るハッシュテーブルを生成して圧縮データ記憶部に記憶させるハッシュテーブル生成部と、
上記各フレーム画像のうち、上記ハッシュ演算部により算出されたハッシュ値が異なる複数のフレーム画像をそれぞれ上記ハッシュテーブル内の異なる各ハッシュ値に関連付けて上記圧縮データ記憶部に記憶させ、上記ハッシュ値が同じ複数のフレーム画像についてはその中の1つのみを上記ハッシュテーブル内の同じ各ハッシュ値に関連付けて上記圧縮データ記憶部に記憶させる画像間引部とを備え、
上記ハッシュテーブル生成部は、複数の動画データ毎に別のハッシュテーブルを生成して上記圧縮データ記憶部に記憶させ、
上記画像間引部は、ある動画データについて上記ハッシュ演算部により算出されたハッシュ値が、上記複数の動画データ毎に生成された複数のハッシュテーブルの何れか少なくとも1つに既に記憶されているか否かを判定し、何れのハッシュテーブルにも記憶されていないと判定された場合に限り、当該ハッシュ値に対応するフレーム画像を上記圧縮データ記憶部に記憶させることを特徴とする動画圧縮装置。 A hash calculation unit that performs a hash operation on each frame image constituting the moving image data and calculates a hash value as a feature quantity that can identify the identity of the frame image;
A hash table generation unit that generates a hash table formed by listing a plurality of hash values calculated for each frame image by the hash calculation unit in the order of the frame images and stores the hash table in a compressed data storage unit;
Among the frame images, a plurality of frame images having different hash values calculated by the hash calculation unit are stored in the compressed data storage unit in association with different hash values in the hash table, and the hash value is An image thinning unit that associates only one of the plurality of frame images with each hash value in the hash table and stores the same in the compressed data storage unit ;
The hash table generation unit generates another hash table for each of a plurality of moving image data and stores the hash table in the compressed data storage unit,
The image thinning unit determines whether the hash value calculated by the hash calculation unit for certain moving image data has already been stored in at least one of the plurality of hash tables generated for the plurality of moving image data. Only when it is determined that it is not stored in any hash table, the moving image compression apparatus stores the frame image corresponding to the hash value in the compressed data storage unit .
上記動画圧縮装置は、
動画データを構成する各フレーム画像に対してハッシュ演算を行い、フレーム画像の同一性を特定可能な特徴量としてハッシュ値を算出するハッシュ演算部と、
上記ハッシュ演算部により上記各フレーム画像について算出された複数のハッシュ値を上記各フレーム画像の順番に沿ってリスト化して成るハッシュテーブルを生成して圧縮データ記憶部に記憶させるハッシュテーブル生成部と、
上記各フレーム画像のうち、上記ハッシュ演算部により算出されたハッシュ値が異なる複数のフレーム画像をそれぞれ上記ハッシュテーブル内の異なる各ハッシュ値に関連付けて上記圧縮データ記憶部に記憶させ、上記ハッシュ値が同じ複数のフレーム画像についてはその中の1つのみを上記ハッシュテーブル内の同じ各ハッシュ値に関連付けて上記圧縮データ記憶部に記憶させる画像間引部とを備え、
上記画像生成サーバは、
上記動画圧縮装置により生成された上記ハッシュテーブルおよび当該ハッシュテーブルの各ハッシュ値に関連付けられた複数のフレーム画像を圧縮データとして上記クライアント装置に送信する圧縮データ送信部とを更に備え、
上記クライアント装置は、
上記画像生成サーバの上記圧縮データ送信部により送信された上記圧縮データを受信する圧縮データ受信部と、
上記圧縮データ受信部により受信された上記圧縮データを第2の圧縮データ記憶部に記憶させる圧縮データ保存部と、
上記第2の圧縮データ記憶部に記憶された上記圧縮データを伸長する上記動画伸長装置とを備え、
上記動画伸長装置は、
上記第2の圧縮データ記憶部に記憶されている上記ハッシュテーブルから上記複数のハッシュ値を順次読み出すハッシュ値読出部と、
上記ハッシュ値読出部により読み出された上記複数のハッシュ値に対応する複数のフレーム画像を上記第2の圧縮データ記憶部から順次読み出して動画の再生を実行する動画再生部とを備え、
上記動画圧縮装置が備える上記ハッシュテーブル生成部は、複数の動画データ毎に別のハッシュテーブルを生成して上記圧縮データ記憶部に記憶させ、
上記画像間引部は、ある動画データについて上記ハッシュ演算部により算出されたハッシュ値が、上記複数の動画データ毎に生成された複数のハッシュテーブルの何れか少なくとも1つに既に記憶されているか否かを判定し、何れのハッシュテーブルにも記憶されていないと判定された場合に限り、当該ハッシュ値に対応するフレーム画像を上記圧縮データ記憶部に記憶させることを特徴とする動画圧縮伸長システム。 And an image generation server with a dynamic image compression apparatus, a moving image compression decompression system including a client device having a video decompression apparatus,
The video compression device
A hash calculation unit that performs a hash operation on each frame image constituting the moving image data and calculates a hash value as a feature quantity that can identify the identity of the frame image;
A hash table generation unit that generates a hash table formed by listing a plurality of hash values calculated for each frame image by the hash calculation unit in the order of the frame images and stores the hash table in a compressed data storage unit;
Among the frame images, a plurality of frame images having different hash values calculated by the hash calculation unit are stored in the compressed data storage unit in association with different hash values in the hash table, and the hash value is An image thinning unit that associates only one of the plurality of frame images with each hash value in the hash table and stores the same in the compressed data storage unit;
The image generation server
A compressed data transmission unit that transmits the hash table generated by the video compression device and a plurality of frame images associated with the hash values of the hash table to the client device as compressed data;
The client device
A compressed data receiving unit that receives the compressed data transmitted by the compressed data transmitting unit of the image generation server;
A compressed data storage unit for storing the compressed data received by the compressed data receiving unit in a second compressed data storage unit;
The moving image decompression device for decompressing the compressed data stored in the second compressed data storage unit,
The video decompression device
A hash value reading unit that sequentially reads the plurality of hash values from the hash table stored in the second compressed data storage unit;
A moving image reproduction unit that sequentially reads out a plurality of frame images corresponding to the plurality of hash values read out by the hash value reading unit from the second compressed data storage unit and reproduces a moving image ;
The hash table generation unit included in the video compression device generates another hash table for each of a plurality of video data and stores the hash table in the compression data storage unit,
The image thinning unit determines whether the hash value calculated by the hash calculation unit for certain moving image data has already been stored in at least one of the plurality of hash tables generated for the plurality of moving image data. The moving image compression / decompression system is characterized in that the frame image corresponding to the hash value is stored in the compressed data storage unit only when it is determined that the hash value is not stored in any hash table .
上記ハッシュ演算部により算出されたハッシュ値が上記クライアント装置の上記第2の圧縮データ記憶部に記憶されているか否かを判定する特徴量判定部を更に備え、
上記圧縮データ送信部は、上記特徴量判定部により上記ハッシュ値が上記クライアント装置の上記第2の圧縮データ記憶部に記憶されていないと判定された場合に限り、上記フレーム画像およびそれに対応するハッシュ値を上記圧縮データとして上記クライアント装置に送信する一方、上記特徴量判定部により上記ハッシュ値が上記クライアント装置の上記第2の圧縮データ記憶部に記憶されていると判定された場合、上記ハッシュ値のみを上記圧縮データとして上記クライアント装置に送信することを特徴とする請求項2に記載の動画圧縮伸長システム。 The image generation server
A feature amount determination unit that determines whether or not the hash value calculated by the hash calculation unit is stored in the second compressed data storage unit of the client device;
The compressed data transmission unit is configured to provide the frame image and the corresponding hash only when the hash value is determined not to be stored in the second compressed data storage unit of the client device by the feature amount determination unit. When the value is transmitted to the client device as the compressed data, and the hash value is determined by the feature amount determination unit to be stored in the second compressed data storage unit of the client device, the hash value The moving image compression / decompression system according to claim 2 , wherein only the compressed data is transmitted to the client device.
上記動画圧縮装置は、
動画データを構成する各フレーム画像に対してハッシュ演算を行い、フレーム画像の同一性を特定可能な特徴量としてハッシュ値を算出するハッシュ演算部と、
上記ハッシュ演算部により上記各フレーム画像について算出された複数のハッシュ値を上記各フレーム画像の順番に沿ってリスト化して成るハッシュテーブルを生成して圧縮データ記憶部に記憶させるハッシュテーブル生成部と、
上記各フレーム画像のうち、上記ハッシュ演算部により算出されたハッシュ値が異なる複数のフレーム画像をそれぞれ上記ハッシュテーブル内の異なる各ハッシュ値に関連付けて上記圧縮データ記憶部に記憶させ、上記ハッシュ値が同じ複数のフレーム画像についてはその中の1つのみを上記ハッシュテーブル内の同じ各ハッシュ値に関連付けて上記圧縮データ記憶部に記憶させる画像間引部とを備え、
上記画像生成サーバは、
圧縮対象の動画データに対して、上記ハッシュ演算部、上記ハッシュテーブル生成部および上記画像間引部の処理によって画像圧縮を行う上記動画圧縮装置と、
上記動画圧縮装置により生成された上記ハッシュテーブルおよび当該ハッシュテーブルの各ハッシュ値に関連付けられた複数のフレーム画像を圧縮データとして上記クライアント装置に送信する第1の圧縮データ送信部と、
上記動画圧縮装置により生成されたハッシュ値およびそれに関連付けられたフレーム画像を上記画像保存サーバに送信する第2の圧縮データ送信部とを備え、
上記画像保存サーバは、
上記画像生成サーバの上記第2の圧縮データ送信部により送信された上記圧縮データを受信する第2の圧縮データ受信部と、
上記第2の圧縮データ受信部により受信された上記圧縮データを第3の圧縮データ記憶部に記憶させる第2の圧縮データ保存部と、
上記クライアント装置からハッシュ値と共に画像取得要求が送られてきた場合、当該ハッシュ値に関連付けられたフレーム画像を上記第3の圧縮データ記憶部から読み出して上記クライアント装置に送信するフレーム画像送信部とを備え、
上記クライアント装置は、
上記画像生成サーバの上記第1の圧縮データ送信部により送信された上記圧縮データを受信する第1の圧縮データ受信部と、
上記第1の圧縮データ受信部により受信された上記圧縮データを第2の圧縮データ記憶部に記憶させる第1の圧縮データ保存部と、
上記画像生成サーバから上記ハッシュテーブルに格納されたハッシュ値のリストを取得するハッシュリスト取得部と、
上記ハッシュリスト取得部により取得されたハッシュリストに含まれるハッシュ値が、上記画像生成サーバの上記圧縮データ記憶部、上記クライアント装置の上記第2の圧縮データ記憶部、上記画像保存サーバの上記第3の圧縮データ記憶部の何れかに既に記憶されているか否かを、上記クライアント装置からのネットワーク距離が近い順に確認するハッシュ値存否判定部と、
上記画像生成サーバ、上記クライアント装置および上記画像保存サーバの各ノードのうち、上記ハッシュ値存否判定部により上記ハッシュ値が既に記憶されていると判定されたノードから上記ハッシュ値に関連付けられたフレーム画像を取得するフレーム画像取得部と、
上記フレーム画像取得部により取得された複数のフレーム画像を用いて動画の再生を実行する動画再生部とを備えたことを特徴とする動画圧縮伸長システム。 And an image generation server with a dynamic image compression apparatus, an image storage server apparatus, a moving image compression decompression system including a client device,
The video compression device
A hash calculation unit that performs a hash operation on each frame image constituting the moving image data and calculates a hash value as a feature quantity that can identify the identity of the frame image;
A hash table generation unit that generates a hash table formed by listing a plurality of hash values calculated for each frame image by the hash calculation unit in the order of the frame images and stores the hash table in a compressed data storage unit;
Among the frame images, a plurality of frame images having different hash values calculated by the hash calculation unit are stored in the compressed data storage unit in association with different hash values in the hash table, and the hash value is An image thinning unit that associates only one of the plurality of frame images with each hash value in the hash table and stores the same in the compressed data storage unit;
The image generation server
The moving image compression apparatus that compresses the moving image data to be compressed by the hash calculation unit, the hash table generation unit, and the image thinning unit;
A first compressed data transmission unit that transmits the hash table generated by the moving image compression apparatus and a plurality of frame images associated with the hash values of the hash table to the client apparatus as compressed data;
A second compressed data transmission unit that transmits the hash value generated by the moving image compression apparatus and the frame image associated therewith to the image storage server;
The image storage server
A second compressed data receiver that receives the compressed data transmitted by the second compressed data transmitter of the image generation server;
A second compressed data storage unit for storing the compressed data received by the second compressed data receiving unit in a third compressed data storage unit;
A frame image transmission unit that reads a frame image associated with the hash value from the third compressed data storage unit and transmits the frame image to the client device when an image acquisition request is sent from the client device together with the hash value; Prepared,
The client device
A first compressed data receiver for receiving the compressed data transmitted by the first compressed data transmitter of the image generation server;
A first compressed data storage unit for storing the compressed data received by the first compressed data receiving unit in a second compressed data storage unit;
A hash list acquisition unit for acquiring a list of hash values stored in the hash table from the image generation server;
The hash values included in the hash list acquired by the hash list acquisition unit are the compressed data storage unit of the image generation server, the second compressed data storage unit of the client device, and the third of the image storage server. A hash value presence / absence determining unit for confirming whether or not the compressed data storage unit is already stored in the order of the network distance from the client device;
Among the nodes of the image generation server, the client device, and the image storage server, the frame image associated with the hash value from the node determined by the hash value existence determination unit that the hash value has already been stored A frame image acquisition unit for acquiring
A moving image compression / decompression system comprising: a moving image reproduction unit that reproduces a moving image using a plurality of frame images acquired by the frame image acquisition unit.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/055481 WO2015132885A1 (en) | 2014-03-04 | 2014-03-04 | Moving image compression apparatus and moving image compression/decompression system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5739079B1 true JP5739079B1 (en) | 2015-06-24 |
JPWO2015132885A1 JPWO2015132885A1 (en) | 2017-03-30 |
Family
ID=53534118
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015503606A Active JP5739079B1 (en) | 2014-03-04 | 2014-03-04 | Movie compression apparatus and movie compression / decompression system |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP5739079B1 (en) |
WO (1) | WO2015132885A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017048058A1 (en) * | 2015-09-17 | 2017-03-23 | Samsung Electronics Co., Ltd. | Method and apparatus for transmitting and receiving data in communication system |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017168730A1 (en) * | 2016-03-31 | 2017-10-05 | 富士通株式会社 | Data transmission program, data transmission method, and data transmission device |
CN113610947A (en) * | 2021-08-09 | 2021-11-05 | 平安国际智慧城市科技股份有限公司 | Animation generation method and device, computer equipment and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001309219A (en) * | 2000-04-20 | 2001-11-02 | Fuji Photo Film Co Ltd | Image transfer system |
US20070116110A1 (en) * | 2005-11-22 | 2007-05-24 | Nimrod Diamant | Optimized video compression using hashing function |
JP2007226635A (en) * | 2006-02-24 | 2007-09-06 | Victor Co Of Japan Ltd | Server device and client device of remote desktop system |
JP2009212748A (en) * | 2008-03-04 | 2009-09-17 | Casio Comput Co Ltd | Server apparatus, image compressing apparatus, and program |
-
2014
- 2014-03-04 WO PCT/JP2014/055481 patent/WO2015132885A1/en active Application Filing
- 2014-03-04 JP JP2015503606A patent/JP5739079B1/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001309219A (en) * | 2000-04-20 | 2001-11-02 | Fuji Photo Film Co Ltd | Image transfer system |
US20070116110A1 (en) * | 2005-11-22 | 2007-05-24 | Nimrod Diamant | Optimized video compression using hashing function |
JP2007226635A (en) * | 2006-02-24 | 2007-09-06 | Victor Co Of Japan Ltd | Server device and client device of remote desktop system |
JP2009212748A (en) * | 2008-03-04 | 2009-09-17 | Casio Comput Co Ltd | Server apparatus, image compressing apparatus, and program |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017048058A1 (en) * | 2015-09-17 | 2017-03-23 | Samsung Electronics Co., Ltd. | Method and apparatus for transmitting and receiving data in communication system |
CN108028841A (en) * | 2015-09-17 | 2018-05-11 | 三星电子株式会社 | Method and apparatus for sending and receiving data in a communications system |
US10050881B2 (en) | 2015-09-17 | 2018-08-14 | Samsung Electronics Co., Ltd. | Method and apparatus for transmitting and receiving data in communication system |
CN108028841B (en) * | 2015-09-17 | 2021-08-27 | 三星电子株式会社 | Method and apparatus for transmitting and receiving data in a communication system |
Also Published As
Publication number | Publication date |
---|---|
JPWO2015132885A1 (en) | 2017-03-30 |
WO2015132885A1 (en) | 2015-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPWO2018037737A1 (en) | IMAGE PROCESSING APPARATUS, IMAGE PROCESSING METHOD, AND PROGRAM | |
JP6686541B2 (en) | Information processing system | |
JP2017212611A (en) | Monitoring method by monitoring camera system, and moving picture dividing device | |
US10277652B2 (en) | Transmission apparatus, transmission method, and program | |
JP5739079B1 (en) | Movie compression apparatus and movie compression / decompression system | |
US9219795B2 (en) | Moving picture file transmitting server and method of controlling operation of same | |
CN108696505A (en) | Video distribution apparatus, video reception apparatus, method of video distribution and recording medium | |
KR101671388B1 (en) | Method and apparatus for storing back-up data through network, apparatus for providing back-up data, and back-up system | |
TWI680668B (en) | Screen image transmission method, image restoration method, screen image transmission system, image restoration system, screen image transmission program, image restoration program, image compression method, image compression system, and image compression program | |
JP5078538B2 (en) | Image reproducing apparatus, processing method thereof, and program thereof | |
US10284821B2 (en) | Imaging apparatus and imaging system | |
JP6890977B2 (en) | Transmitter, transmission method, and program | |
JP5072524B2 (en) | Moving picture reproduction apparatus, processing method thereof, and program thereof | |
US20200045096A1 (en) | Video data transmission apparatus, video data transmitting method, and storage medium | |
JP2006139682A (en) | Video search system, video search method, and program | |
JP6357188B2 (en) | Surveillance camera system and surveillance camera data storage method | |
JP2006195807A (en) | Image search system, image search method, and program | |
WO2015153723A1 (en) | A method and system for real-time cloud storage of video content | |
JP5004745B2 (en) | Moving picture playback apparatus, control method thereof, and program thereof | |
JP5047127B2 (en) | Imaging device | |
JP6282136B2 (en) | Imaging apparatus and control method thereof | |
JP2017085483A (en) | Video transmitter and radio instruction device | |
JP2018110404A (en) | Screen image transfer method, image decompression method, screen image transfer system, image decompression system, screen image transfer program, image decompression program, image compression method, image compression system, and image compression program | |
JP2009253961A (en) | Image information playback apparatus, and information processing system | |
KR20070031074A (en) | Method for transmitting video frame in digital video recorder |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20150327 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150331 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150422 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5739079 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |