(57)【要約】【課題】様々なパターンの参照領域の画素値を、対象領域の画素値の予測に利用することのできる、予測装置およびプログラムを提供する。【解決手段】予測装置は、画像内の参照領域内の画素値列から、前記画像内の対象領域内の画素値列を予測する。予測装置は、１個以上の入力値に対する重み和を算出し、前記重み和に関数を適用することで出力値を得る回路であるニューロンを複数備える。各々の前記ニューロンの入力は、前記参照領域内の画素値または他の前記ニューロンからの出力値が接続されるものである。そして、各々の前記ニューロンからの出力値は、他の前記ニューロンの入力に接続され、または前記対象領域内の画素値の予測値として出力される。【選択図】図５
2018125713.tif 000002
【特許請求の範囲】
【請求項１】
画像内の参照領域内の画素値列から、前記画像内の対象領域内の画素値列を予測する予測装置であって、
１個以上の入力値に対する重み和を算出し、前記重み和に関数を適用することで出力値を得る回路であるニューロンを複数備え、
各々の前記ニューロンの入力は、前記参照領域内の画素値または他の前記ニューロンからの出力値が接続されるものであり、
各々の前記ニューロンからの出力値は、他の前記ニューロンの入力に接続され、または前記対象領域内の画素値の予測値として出力される、
ことを特徴とする予測装置。
【請求項２】
前記参照領域内の画素値列を入力する層である入力層に属するニューロン以外の前記ニューロンは、前記重み和に非線形関数を適用することで前記出力値を得る、
ことを特徴とする請求項１に記載の予測装置。
【請求項３】
前記参照領域内の部分領域である近傍参照領域の画素値列から前記対象領域内の画素値の予測値へのニューロン接続のネットワークが、３層以上の多層パーセプトロンであり、
さらに、
前記ネットワークは、前記近傍参照領域内の画素値列から、少なくとも一層をスキップして前記多層パーセプトロンの中間層または出力層に属するニューロンへ至る短絡的な接続を有する、
ことを特徴とする請求項１または２に記載の予測装置。
【請求項４】
画像符号化装置内または画像復号装置内に設けられる予測装置であって、
前記ニューロンが前記重み和を算出する際に用いるための重み値を記憶する更新可能なメモリと、
前記対象領域の画素値として予測した予測値と、前記画像符号化装置内または前記画像復号装置内の復号手段が復号した結果得られる当該対象領域の画素値との差に基づいて、前記メモリに記憶された前記重み値を更新する学習手段と、
をさらに具備することを特徴とする請求項１から３までのいずれか一項に記載の予測装置。
【請求項５】
コンピューターを、
請求項１から４までのいずれか一項に記載の予測装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、予測装置およびプログラムに関する。
【背景技術】
【０００２】
画像符号化や映像符号化のイントラスライスにおいては、画面内の既に符号化済みの領域内の情報に基づき、これから符号化すべき対象領域の画素値列を予測し、対象領域の実際の画素値列と予測による画素値列との差分をとってエントロピー符号化する。これにより、実際の画素値列と予測された画素値列との差分が統計的に０付近の値に偏在する傾向を活用して、符号化効率の向上を実現している。
【０００３】
例えば、ＭＰＥＧ−H  ＨＥＶＣ／Ｈ．２６５においては、方向予測モード（３３種類）と、平均値予測と、平面予測の、計３５モードの画面内予測法が利用可能である。このうち、方向予測モードは、符号化対象ブロックの近傍の参照画素値列を所定方向へ外挿することにより、予測ブロックを得るものである。また、平均値予測は、予測ブロック内の全画素を参照画素値列の平均値とするものである。また、平面予測は、参照画素値列に近似的な双一次補間を適用することで予測ブロックを得るものである。
【０００４】
また、参照ブロックおよび予測ブロックからなる処理ブロックに対して、直交変換を適用し、その変換係数の高域成分が小さくなるよう予測ブロックの係数を修正することで、参照ブロックおよび予測ブロックの間の波形の交流的な連続性を持たせる画面内予測手法もある（特許文献１に記載）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第５５０９０４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、従来の画面内予測法は、入力画像によらず固定的であり、その適応性は画像に応じて（レート歪最適化によって）複数手法を切り替えるにとどまっていた。また、予測ブロックは、周辺画素値の内挿、外挿、または一定値（例えば平均値）によりパディングされるだけで、例えば周辺画素値列のなすテクスチャパターンや曲線的なパターンなどを反映した予測は実現できなかった。即ち、周辺画素値列と符号化対象の画素値列の間に存在する相関性を活用して符号化することが従来技術では十分にできていないため、符号化効率を向上させる余地は未だ残されている。
【０００７】
特許文献１に記載された手法によれば、予測ブロックと参照ブロックとの間の交流的な連続性を持たせることができ、周辺画素値列のなす曲線的なパターンを反映した予測が可能である。しかしながら、特許文献１に記載された手法は、変換係数の高域成分を低減させる反復動作によって、細かいテクスチャパターンに含まれる高域成分をも減衰させてしまう。これにより、特に周辺画素値列のなすテクスチャパターンが細かいパターンで構成される場合には、十分な予測性能を発揮できないという問題がある。
【０００８】
本発明は、上記の事情に鑑みて為されたものであり、細かいパターンをも含め、様々なパターンの参照領域の画素値を、対象領域の画素値の予測に利用することのできる、予測装置およびプログラムを提供しようとするものである。
【課題を解決するための手段】
【０００９】
［１］上記の課題を解決するため、本発明の一態様による予測装置は、画像内の参照領域内の画素値列から、前記画像内の対象領域内の画素値列を予測する予測装置であって、１個以上の入力値に対する重み和を算出し、前記重み和に関数を適用することで出力値を得る回路であるニューロンを複数備え、各々の前記ニューロンの入力は、前記参照領域内の画素値または他の前記ニューロンからの出力値が接続されるものであり、各々の前記ニューロンからの出力値は、他の前記ニューロンの入力に接続され、または前記対象領域内の画素値の予測値として出力される、ことを特徴とする。
【００１０】
［２］また、本発明の一態様は、上記の予測装置において、前記参照領域内の画素値列を入力する層である入力層に属するニューロン以外の前記ニューロンは、前記重み和に非線形関数を適用することで前記出力値を得る、ことを特徴とする。
【００１１】
［３］また、本発明の一態様は、上記の予測装置において、前記参照領域内の部分領域である近傍参照領域の画素値列から前記対象領域内の画素値の予測値へのニューロン接続のネットワークが、３層以上の多層パーセプトロンであり、さらに、前記ネットワークは、前記近傍参照領域内の画素値列から、少なくとも一層をスキップして前記多層パーセプトロンの中間層または出力層に属するニューロンへ至る短絡的な接続を有する、ことを特徴とする。
【００１２】
［４］また、本発明の一態様は、上記の予測装置において、画像符号化装置内または画像復号装置内に設けられる予測装置であって、前記ニューロンが前記重み和を算出する際に用いるための重み値を記憶する更新可能なメモリと、前記対象領域の画素値として予測した予測値と、前記画像符号化装置内または前記画像復号装置内の復号手段が復号した結果得られる当該対象領域の画素値との差に基づいて、前記メモリに記憶された前記重み値を更新する学習手段と、をさらに具備することを特徴とする。
【００１３】
［５］また、本発明の一態様は、コンピューターを、上記［１］から［４］までのいずれか一項に記載の予測装置として機能させるためのプログラムである。
【発明の効果】
【００１４】
本発明によれば、複数のニューロンの結合により実現される関数により、様々な画素値パターンにも対応して、参照領域内の画素値列から対象領域の画素値列を予測する精度を上げることができる。また、予測装置の予測精度が上がることにより、符号化の効率を向上させることができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１実施形態による画面内予測装置を組み込んだ、符号化装置および復号装置の概略機能構成を示すブロック図である。
【図２】同実施形態による画面内予測装置が処理の対象とする、画像内の参照領域および対象領域の配置の一例を示す概略図である。
【図３】同実施形態による画面内予測装置内のニューラルネットワークの構成要素となるニューロンの回路の一例を示す概略図である。
【図４】同実施形態による画面内予測装置内におけるニューラルネットワークの構成例を示す概略図である。
【図５】同実施形態による画面内予測装置内におけるニューラルネットワークの別の構成例を示す概略図である。
【図６】同実施形態におけるニューロン間における接続と、ニューロンでの演算処理を説明するための概略図である。
【図７】第２実施形態による画面内予測装置が処理の対象とする、画像内の参照領域および対象領域の配置の一例であって、近傍参照領域を含む例を示す概略図である。
【図８】実施形態の変形例における、画像内の参照領域と対象領域の配置の例を示す概略図である。
【図９】実施形態の変形例における、画像内の参照領域と対象領域の配置の例（近傍参照領域を含む例）を示す概略図である。
【発明を実施するための形態】
【００１６】
［第１実施形態］
次に、本発明の第１実施形態について、図面を参照しながら説明する。
図１は、本実施形態による画面内予測装置を組み込んだ、符号化装置および復号装置の概略機能構成を示すブロック図である。画像符号化装置１および画像復号装置３がそれぞれ符号化および復号の対象とするものは、静止画および動画（以下では、これらを総称して「画像」と呼ぶ）である。画像符号化装置１は、その機能の一部として画面内予測装置１２を組み込んでいるまた、画像復号装置３は、その機能の一部として画面内予測装置３４を組み込んでいる。画面内予測装置１２および画面内予測装置３４は、それぞれ、画面内での画素値の予測（フレーム内予測）を行うものである。
【００１７】
なお、画像符号化装置１と画像復号装置３とは対をなす。画像符号化装置１が出力した符号列（ビット列）は、伝送路を経由して、または蓄積装置に蓄積されて、あるいは伝送路と蓄積装置とを複合した媒体ないしは装置を介して、画像復号装置３に渡される。なお、伝送路や蓄積装置やそれら両者の複合した装置等を、「伝送・蓄積装置」と総称する。つまり、画像符号化装置１と画像復号装置３との間で、符号列（ビット列）が受け渡される。
【００１８】
同図において、画像符号化装置１は、ブロック分割部１０と、メモリ１１と、画面内予測装置１２と、減算部１３と、変換部１４と、量子化部１５と、エントロピー符号化部１６と、逆量子化部１７と、逆変換部１８と、加算部１９とを含んで構成される。これら各部は、電子回路等により実現される。各部の機能は、次の通りである。
【００１９】
ブロック分割部１０は、入力画像（静止画像、または動画像における１フレーム）を部分領域（ブロック）に分割する。典型的には、ブロック分割部１０は、矩形領域のブロックへの分割を行う。ブロック分割部１０は、例えば所定の形状および大きさ（以下、形状および大きさを合わせて、「ブロック形状」と言う）（例えば、水平８画素および垂直８画素の６４画素の領域）によって画像を分割する。あるいは、ブロック分割部１０が、異なる複数のブロック形状の中から、画像の特徴や符号化時のレート歪特性に応じて適応的にブロック形状を選択して、ブロック分割するものであっても構わない。ブロック分割部１０は、ブロック位置を変えつつ、順次ブロックを切り出し、当該ブロック単位で以降の符号化処理を行う。なお、ブロック分割部１０が、ブロック位置を変えるときに必要に応じてブロック形状をも変更するようにしてもよい。
【００２０】
メモリ１１は、符号化処理および復号処理をブロック単位で実行した結果（局部復号ブロック）を順次記憶する。すなわち、メモリ１１は、画像のうちこれまでに符号化・復号された部分領域の画素値列を保持する。
【００２１】
画面内予測装置１２は、メモリ１１に保持されている画素値列に基づき、ブロック分割部１０が次に符号化するブロック内の画素値列を推測（予測）する。より具体的に言うと、画面内予測装置１２は、画像内の参照領域内の画素値列から、その画像内の対象領域内の画素値列を予測するものである。
【００２２】
減算部１３は、ブロック分割部１０から渡されるブロックについて、当該ブロック内の画素値列から、画面内予測装置１２により予測された画素値列を画素位置ごとに減じ、その結果たる残差値列を出力する。
変換部１４は、減算部１３から渡される残差値列に対し、数学的な変換を施し、その結果たる変換係数列を出力する。変換部１４において実行する数学的な変換は、単一種類の変換であっても構わないし、複数種類の変換の中からブロック形状や画像の特徴やレート歪特性等に応じて適応的に選択した変換であっても構わない。
変換部１４において実行する変換としては、例えば、離散コサイン変換（ＤＣＴ：Discrete Cosine Transform）、離散サイン変換（ＤＳＴ：Discrete Sine Transform）、ウェーブレット変換、ウォルシュ・アダマール変換など、およびこれらの変換に整数近似や離散近似を施した変換が挙げられる。
【００２３】
量子化部１５は、変換部１４によって出力された変換係数列を、より多くない信号値レベルに変換（量子化）する。例えば、量子化部１５は、変換係数列を所定の正値（量子化ステップ）によって除し、その結果を整数値に丸めた数列を出力する。または、例えば、量子化部１５は、変換係数列の各項を、各項の位置ごとに決められた量子化ステップ（量子化テーブル）によって除すよう構成してもよい。さらに、量子化ステップや量子化テーブルを複数備え、それらの中から一つを、使用者が指定したり、自動的に選択したり、さらに自動的に切り替えて選択するように構成しても構わない。
【００２４】
エントロピー符号化部１６は、量子化部１５において量子化された変換係数列をそのエントロピーに着目して符号化する。エントロピー符号化部１６は、前記量子化された変換係数列のほか、符号化の各処理（ブロック分割部１０、変換部１４、量子化部１５、画面内予測装置１２）の動作状態（複数の異なる動作のうちいずれを用いたかを表す識別子：モード）をも符号化しても構わない。
エントロピー符号化部１６には、例えば、可変長符号化（例えば、ハフマン符号化やその変形であるＣＡＶＬＣ（Context-based Adaptive VLC，コンテキスト適応型可変長符号化方式））を用いることができる。あるいは、エントロピー符号化部１６には、例えば、算術符号化やその変形であるＣＡＢＡＣ（Context-based Adaptive Binary Arithmetic Coding，コンテキスト適応型二値算術符号化方式）を用いることができる。
【００２５】
逆量子化部１７は、量子化部１５によって量子化された変換係数列に、量子化ステップを乗ずることにより、逆量子化された変換係数列を得る。
逆変換部１８は、逆量子化部１７によって得られた逆量子化された変換係数列に対し変換部１４の逆変換を実行し、その結果を復号された残差値列として出力する。
加算部１９は、画面内予測装置１２により予測された画素値列と逆変換部１８から出力された復号された残差値列とを画素位置ごとに加算し、その結果を復号画素値列として出力する。
加算部１９の出力する復号画素値列は、メモリ１１内の現在処理中のブロックに対応する記憶領域に書き込まれる。
以上の動作により、画像符号化装置１は、入力画像をビット列に変換する。
【００２６】
続いて、画像復号装置３の機能構成および動作について説明する。
図示するように、画像復号装置３は、エントロピー復号部３０と、逆量子化部３１と、逆変換部３２と、メモリ３３と、画面内予測装置３４と、加算部３５と、を含んで構成される。これら各部は、電子回路等により実現される。各部の機能は、次の通りである。
【００２７】
エントロピー復号部３０は、画像符号化装置１内のエントロピー符号化部１６と対をなすものであり、エントロピー符号化部１６から出力され、必要に応じて伝送・蓄積装置２によって伝送・蓄積されたビット列を復号し、量子化された変換係数列を出力する。また、エントロピー復号部３０は、前記量子化された変換係数列に加えて、符号化の各処理（ブロック分割部１０、変換部１４、量子化部１５、画面内予測装置１２）の動作状態を出力する。
【００２８】
逆量子化部３１は、画像符号化装置１内の逆量子化部１７と同様の動作により、エントロピー復号部３０からの量子化された変換係数列に対して逆量子化を施し、逆量子化された変換係数列を出力する。
以降、逆量子化部３１、逆変換部３２、メモリ３３、画面内予測装置３４、および加算部３５は、それぞれ、画像符号化装置１内の逆量子化部１７、逆変換部１８、メモリ１１、画面内予測装置１２、および加算部１９と同様の動作を行う。これにより、メモリ３３内には、復号画像が書き込まれていく。なお、この復号処理は、ブロックごとに順次行われる。
【００２９】
メモリ３３内に画像が完全に構成されたとき、メモリ３３はこの画像を出力する。なお、画像符号化装置１および画像復号装置３が動画像を処理するものである場合には、メモリ３３に構成された画像（動画像におけるフレーム）を必要に応じて保持して、画像の出力のタイミングを調整してもよい。さらに、画像符号化装置１および画像復号装置３が動画像のフレームの順序を入れ替えて符号化を行うものである場合には、メモリ３３からの出力画像をメモリ３３内もしくはその後段に設けられる他のメモリに一時的に蓄積し、画像の出力順序を調節する。つまり、画像復号装置３は、画像の出力順序が入力画像の順序と整合（一致）するように、画像の出力順序を入れ替える。
【００３０】
次に、画面内予測装置１２および画面内予測装置３４の動作について説明する。以下では、画面内予測装置１２を取り上げてその動作について説明するが、画面内予測装置３４の動作もこれと同様ある。
【００３１】
画面内予測装置１２は、処理対象である画像内の参照領域Ｒに属する画素の画素値から、同画像内の対象領域Ｐに属する画素の画素値を推定する。
【００３２】
図２は、参照領域Ｒおよび対象領域Ｐの配置の一例を示す概略図である。ここに図示する参照領域Ｒおよび対象領域Ｐの例は、ブロックごとの符号化処理を、左上から右下の方向へ順次進行させる場合に好適である。
図示する例は、縦・横が同数（Ｋ個）のマス目を示している。各マス目が、画像内の画素に相当する。この例では、Ｋ行Ｋ列の画素のうち、最上側の２行または最左側の２列のいずれか（両方でもよい）に含まれる領域が、参照領域Ｒ（符号では、１０１）である。参照領域Ｒに含まれる画素には、便宜上、ｒ１，ｒ２，・・・，ｒＭのラベルを付している。また、Ｋ行Ｋ列の画素のうち、下側の（Ｋ−２）行であって且つ右側の（Ｋ−２）列に含まれる領域が、対象領域Ｐ（符号では、１００）である。対象領域Ｐに含まれる画素には、便宜上、ｐ１，ｐ２，・・・，ｐＮのラベルを付している。なお、ある対象領域Ｐの画素値を画面内予測装置１２が推定（予測）する時点において、参照領域Ｒ内に復号済みでない画素が含まれる場合には、当該画素の画素値としては、当該画素の近傍の復号済みの画素（例えば、最近傍の復号済みの画素）の画素値を流用する。
【００３３】
画面内予測装置１２は、ニューラルネットワークによって、参照領域Ｒに属する画素の画素値から対象領域Ｐに属する画素の画素値を推定する。ニューラルネットワークとは、ニューロンと呼ばれる演算回路を複数接続した回路網である。なお、ニューロンは、ネットワークにおける「ノード」とも呼ばれる。
【００３４】
図３は、ニューラルネットワークの構成要素となるニューロンの回路の一例を示す概略図である。同図において、符号４は、１個のニューロンである。ニューロン４は、複数の入力値（ｘ１乃至ｘＮ）を基に、演算により、出力値ｙを得る。ニューラルネットワークは、多数のニューロンを接続して構成される。ニューロン４の入力には、ニューラルネットワーク全体の入力、または他のニューロンの出力が接続される。また、ニューロン４の出力には、他のニューロンの入力、またはニューラルネットワーク全体の出力が接続される。ニューロン４は、１個以上の入力値に対する重み和を算出し、その重み和に関数を適用することで出力値を得る回路である。画像の符号化処理あるいは復号処理のための装置に設けられる画像内予測装置においては、各々のニューロン４の入力には、画像の参照領域内の画素値または他のニューロン４からの出力値が接続される。また、各々のニューロン４からの出力値は、他のニューロン４の入力に接続され、または画像の対象領域内の画素値の予測値として出力される。
【００３５】
ニューロン４は、自己の入出力関係を可変かつ学習可能とするよう内部パラメーターを有する。この内部パラメーターは、例えば、ニューロン４内のメモリに保持され、記憶されたパラメーター値を必要に応じて外部から更新することができるように構成されている。この内部パラメーターは、例えば、入力ｘ１乃至ｘＮにそれぞれ対応付けられる重み値ｗ１乃至ｗＮである。つまり、ニューロン４は、その内部においてまず、入力ｘ１乃至ｘＮを取得すると、重み値ｗ１乃至ｗＮを用いた積和計算を行う。その時点での重み値ｗ１乃至ｗＮは、図中にも示すメモリから読み出すことができる。さらに、ニューロン４の入出力関係は非線形であることが好ましい。ニューロン４は、上記の積和計算の結果を入力とする関数φの演算回路を備えている。関数φが非線形関数であるとき、ニューロン４の入出力関係は非線形性を有する。即ち、この場合、ニューロン４が有する入出力関係は、下の式（１）で表される。
【００３６】
【数１】
2018125713.tif 000003
【００３７】
上の関数φは、活性化関数と呼ばれる。活性化関数は、好ましくは非線形関数である。但し、後でも述べるように入力層に属するニューロンについては、通常はφ（ｚ）＝ｚとする。つまり、参照領域内の画素値列を入力する層である入力層に属するニューロン以外のニューロンは、入力値の重み和に非線形関数を適用することで出力値を得る。
活性化関数φとして用いることのできる関数は、例えば、ＲｅＬＵ関数（Rectified Linear Unit, Rectifier, 正規化線形関数）や、シグモイド関数や、双曲線正接関数などである。
ＲｅＬＵ関数は、下の式（２）で表される。
【００３８】
【数２】
2018125713.tif 000004
【００３９】
また、シグモイド関数は、下の式（３）で表される。ただし、式（３）におけるａは、適宜定められる定数である。
【００４０】
【数３】
2018125713.tif 000005
【００４１】
また、双曲線正接関数は、φ（ｚ）＝ｔａｎｈ（ｚ）である。
以下では、活性化関数φとしてＲｅＬＵ関数を用いる場合を説明する。
【００４２】
図４は、ニューラルネットワークの構成例を示す概略図である。ここに図示する構成は、４層のパーセプトロンによるものの一例である。図示するように、ニューラルネットワーク５は、入力層５０、第１中間層５１、第２中間層５２、および出力層５３の４層によって構成される。各層には１個以上のニューロンを有する。基本的に、ある層に属するニューロンからの出力が、次の層（次段）に属するニューロンの入力に接続される。ただし、入力層への入力は、ニューラルネットワーク全体への入力である。また、出力層からの出力は、ニューラルネットワーク全体からの出力である。図示する構成では、入力層への入力は、図２にも示した参照領域Ｒに属する画素ｒ１，ｒ２，・・・，ｒＭの画素値である。また、出力層からの出力は、図２にも示した対象領域Ｐに属する画素ｐ１，ｐ２，・・・，ｐＮの画素値の予測値である。
なお、ニューロンからニューロンへデータ（信号値）を伝達する線を、「シナプス」と呼ぶ場合がある。
【００４３】
また、必要に応じて、定数を所定のニューロンに入力するよう構成してもよい。図４に示す構成では、定数５０−０，５１−０，５２−０の値は、それぞれ「１」である。そして、定数５０−０は、第１中間層５１に含まれるニューロン５１−１，・・・，５１−Ｐに入力されている。また、定数５１−０は、第２中間層５２に含まれるニューロン５２−１，５２−２，・・・，５２−Ｑに入力されている。また、定数５２−０は、出力層５３に含まれるニューロン５３−１，５３−２，・・・５３−Ｓに入力されている。
【００４４】
図５は、ニューラルネットワークのまた別の構成例を示す概略図である。ここに示す構成は、スキップレイヤー結合を含んだニューラルネットワークである。同図において、破線で示すシナプスが、スキップレイヤー結合である。破線矢印で示すシナプスは、第１中間層を跨いで、入力層における入力ｒ１，・・・，ｒ１７に対応するニューロンから、第２中間層に属するシナプスまでの直接の接続を実現している。つまり、ここでの破線矢印は、第１中間層をスキップした結合を実現している。このように、ニューラルネットワークがスキップレイヤー結合を含む構成としてもよい。
【００４５】
画面内予測装置１２が、ニューラルネットワークを用いて、参照領域Ｒに属する画素の画素値から対象領域Ｐに属する画素の画素値を推定する手順を次に述べる。
ニューラルネットワークを構成するニューロンの総数をＢ個（Ｂは自然数）とする。なお、ここで例示するニューラルネットワークでは、１≦ａ＜ｂ≦Ｂなる整数対（ａ，ｂ）に対し、第ａニューロンは第ｂニューロンの下流には絶対に存在しないような構成を用いる。換言すれば、そのニューラルネットワークは階層型であり、かつニューロンの識別番号が大きいほど下流側（出力層に近い側）に位置するよう識別番号を割り振られている。また、上記の整数対（ａ，ｂ）に関して言うと、第ａニューロンは、第ｂニューロンよりも上流側の階層か、あるいは第ｂニューロンと同一の階層に位置している。
【００４６】
ここで、Ｂ個のニューロンのうちの第ｂニューロン（１≦ｂ≦Ｂ）について、図面を参照しながら説明する。
図６は、ニューロン間における接続と、ニューロンでの演算処理を説明するための概略図である。図示するように、第ｂニューロンは、Ｎ入力、Ｍ出力である（Ｎ，Ｍは自然数）。即ち、第ｂニューロンは、Ｎ個の入力（ｘｂ，１，ｘｂ，２，・・・，ｘｂ，Ｎ）を有し、１個の出力値ｙｂをＭ個の他のニューロンへ分配する。なお、第ｂニューロンのｎ番目（１≦ｎ≦Ｎ）の入力ｘｂ，ｎに対する重みは、ｗｂ，ｎである。
【００４７】
第ｂニューロンのｎ番目の入力ｘｂ，ｎは、第Ｆ（ｂ，ｎ）ニューロンからの出力に接続される。即ち、第ｂニューロンへの入力値ｘｂ，ｎは、第Ｆ（ｂ，ｎ）ニューロンからの出力値である。ここで、Ｆは関数である。関数Ｆ（ｂ，ｎ）は、第ｂニューロンの第ｎ入力がいずれのニューロンの出力に接続されるかを特定する、バックポインターとして作用する。
第ｂニューロンの出力は、Ｍ個の他のニューロンの各々の入力のうちの１つに接続される。これらＭ個の接続のうち、ｍ番目（１≦ｍ≦Ｍ）の宛先（接続先）を、第Ｔ（ｂ，ｍ）ニューロンの第Ｕ（ｂ，ｍ）入力とする。すなわち、Ｔ（ｂ，ｍ）は、関数であり、第ｂニューロンのｍ番目の宛先のニューロンを表すポインターとして作用する。
また、関数Ｕ（ｂ，ｍ）は、第ｂニューロンのｍ番目の宛先のニューロン（つまり、第Ｔ（ｂ，ｍ）ニューロン）の入力先である端子（いずれの入力端子に入力するか）を表すポインターとして作用する。
【００４８】
画面内予測装置１２が動作するとき、一例として、第１ニューロンから第Ｂニューロンまでの昇順により順次ニューロンを動作させる。この場合、あるニューロンが動作する時よりも前に、その上流のニューロンは既に動作している。
第ｂニューロンは、動作時に、下の式（４）による演算を実行する。
【００４９】
【数４】
2018125713.tif 000006
【００５０】
つまり、式（４）に表す通り、第ｂニューロンは、既に演算済みの第Ｆ（ｂ，ｎ）ニューロンからの出力値と、メモリから読み出した重み値ｗｂ，ｎと（但し、ｎ＝１，２，・・・，Ｎ）を用いて積和演算を行い、その演算結果に活性化関数φｂを適用する。これにより、第ｂニューロンは、出力値ｙｂを、さらに下流のニューロンに渡す。
【００５１】
なお、上では、第１ニューロンから第Ｂニューロンまでの昇順により順次ニューロンを動作させる場合を説明したが、代わりに、次のような順序でニューロンを動作させてもよい。即ち、番号の昇順または降順と無関係に、出力値ｙｂを知りたい任意のニューロン（第ｂニューロン）について、式（４）による演算を行う。ただし、このとき、式（４）の右辺のｙＦ（ｂ，ｎ）のうち、未計算のものがあれば、そのニューロン（第Ｆ（ｂ，ｎ）ニューロン）について、式（４）による演算を行う。つまり、任意のニューロンを起点として、再帰呼び出しを行いながら各ニューロンの出力値を求める演算を順次行っていくような実装形態としてもよい。
【００５２】
なお、活性化関数φｂは、ニューロンごとに異なる関数であってもよい。また、複数のニューロンの活性化関数φｂ１とφｂ２が互いに同じ関数であってもよい。
なお、通常、入力層に属する各ニューロンは、単一の入力値をそのまま出力して分配するだけである。即ち、そのニューロンは１入力であり、恒等的にｗｂ，１＝１であり、且つ、φｂ（ｚ）＝ｚである。
【００５３】
次に、画面内予測装置１２が用いる、ニューラルネットワークの学習について説明する。
ここで言う学習とは、ニューラルネットワークを構成するニューロンの各入力に対応する重みを、事例（学習データ）に基づいて適切に設定する手法を指す。学習データは、入力層に属するニューロンに与える入力値列（参照領域の画素値列）と、出力層に属するニューロンが出力すべき出力値列（対象領域の画素値列）の対である。
【００５４】
学習時においては、まず、学習データ（入力値列と出力値列の対）のうちの入力値列を、入力層に属する各ニューロンの入力として与える。そして、式（４）で説明した、画面内予測動作時の、各ニューロンの動作（式（４）による演算）を実行して、各ニューロンの出力値ｙｂを求めておく。
続いて、第Ｂニューロンから第１ニューロンへの降順により、以下に述べる学習を実行する。具体的には、第ｂニューロンの学習において、次の式（５）による演算を行う。
【００５５】
【数５】
2018125713.tif 000007
【００５６】
式（５）による演算により、第ｂニューロンの誤差値δｂを求めることができる。
ここで、ｔｂは、第ｂニューロンが出力層に属する場合における教師データである。教師データとは、即ち、学習データが含む出力値列（正解データの列）のうちの第ｂニューロン用の値である。
また、第ｂニューロンが中間層に属する場合は、δｂは、第ｂニューロンの宛先（接続先）である第Ｔ（ｂ，ｍ）ニューロンにおいて求められた誤差値δＴ（ｂ，ｍ）と、その第Ｔ（ｂ，ｍ）ニューロンにおける第ｂニューロンからの入力端子に対応する重み値ｗＴ（ｂ，ｍ），U（ｂ，ｍ）とから求められる、重み付けされた誤差値総量である。言い換えれば、ニューラルネットワークの下流から上流に遡る誤差値の重み付け積和である。
【００５７】
なお、上では、第Ｂニューロンから第１ニューロンへの降順により、式（５）による演算を行うと説明したが、代わりに、次のような順序で学習を行ってもよい。即ち、ニューロンの番号の昇順または降順と無関係に、誤差値δｂを知りたい任意のニューロン（第ｂニューロン）について、式（５）による演算を行う。ただし、このとき、式（５）の右辺のδＴ（ｂ，ｎ）のうち、未計算のものがあれば、そのニューロン（第Ｔ（ｂ，ｎ）ニューロン）について、式（５）による演算を行う。つまり、任意のニューロンを起点として、再帰呼び出しを行いながら各ニューロンの誤差値を求める演算を順次行っていくような実装形態としてもよい。
【００５８】
そして、次の式（６）による計算を行って、重み値を更新する。即ち、重み値を記憶しているメモリを書き換える。なお、式（６）において、更新前の重みがｗｂであり、更新後の重みがｗｂ（ｎｅｗ）である。
【００５９】
【数６】
2018125713.tif 000008
【００６０】
なお、ここで、ｓｇｎ（ｚ）は、符号関数である。即ち、ｚが負数のときにｓｇｎ（ｚ）は−１、ｚが零のときにｓｇｎ（ｚ）は０、またｚが正数のときにｓｇｎ（ｚ）は＋１である。
また、ηは学習速度を調整するためのパラメーターである。ηは、正の定数または正の変数である。ηの値が大きいほど高速に学習できる反面、学習結果が最適値に収束しづらくなる。また、ηの値が大きいと、学習結果がうまく収束しない可能性もある。
また、λはＬａｓｓｏ回帰におけるＬ１正則化をどれほど強く効かせるかを定める非負の定数である。λが大きいほど正則化が強く効いて過学習を防ぐことができる反面、学習データに対する回帰の精度は低下する。
【００６１】
画面内予測装置１２におけるニューラルネットワークの学習を、オフラインで事前に実施しておいてもよいし、符号化および復号の処理中にオンラインで実施してもよい。さらには、ニューラルネットワークの学習を事前にオフラインで実施しておいた上で、符号化および復号の処理中にもオンラインで学習を実施しても構わない。いずれの場合も、画像内に参照領域と対象領域を設定し、この対を事例として学習を実施する。
【００６２】
事前に学習を実施する場合には、例えば、非可逆符号化／復号処理を適用していない画像内に、画面内予測実行時の参照領域と対象領域との相対位置関係で参照領域および対象領域を設定し、参照領域内の画素値列および対象領域内の画素値列の対を学習データとして学習を実施する。
あるいは、例えば、非可逆符号化／復号処理を適用した画像（復号画像）内に参照領域を設け、非可逆符号化／復号処理を適用していない画像（原画像）内に対象領域を設ける。そして、参照領域内の画素値列および対象領域内の画素値列の対を学習データとして学習を実施してもよい。これら参照領域と対象領域の各画像座標は、画面内予測実行時の参照領域と対象領域の画像座標の相対位置関係にあるものとする。
【００６３】
一方、オンラインで学習を実施する場合には、非可逆符号化／復号処理を適用した画像内に、画面内予測実行時の参照領域と対象領域との相対位置関係で参照領域および対象領域を設定し、参照領域内の画素値列および学習用対象領域内の画素値列の対を学習データとして学習を実施する。
【００６４】
なお、学習に用いる画像として、回転を施したり鏡像を用いたりしないそのままの画像を用いてもよく、その画像を回転させたり、鏡像を用いたり、またはその両者を適用した画像を用いてもよい。また、これらを併用してもよい。
【００６５】
学習処理を行うための画面内予測装置１２の構成の一例は次の通りである。即ち、各ニューロンは、入力値の重み和を算出する際に用いるための重み値（図３におけるｗ１，ｗ２，・・・，ｗｎ）を記憶するメモリを、更新可能なメモリとする。そして、不図示の学習手段が、対象領域の画素値として予測した予測値と、画像符号化装置１内の復号手段が復号した結果得られる当該対象領域の画素値との差に基づいて、重み値の更新値を計算する（式（６）の計算）。そして、学習手段は、この更新値を用いて、上記のメモリに記憶された重み値を更新する。
なお、画面内予測装置３４も、上記と同様の学習手段を有する。画面内予測装置３４の場合には、重み値の更新値を計算する際に、画像復号装置３内の復号手段が復号した結果得られる対象領域の画素値を用いる。
【００６６】
［第２実施形態］
次に、本発明の第２実施形態について説明する。なお、前実施形態において既に説明した事項については以下において説明を省略する場合がある。ここでは、本実施形態に特有の事項を中心に説明する。
【００６７】
第１実施形態では、画像内に、参照領域と対象領域とを設け、画面内予測装置１２および画面内予測装置３４が、参照領域の画素値を基に対象領域の画素値を推定（予測）する構成としていた。
これに対して、本実施形態では、参照領域内の部分領域として、さらに近傍参照領域を設ける。ここで、近傍参照領域とは、参照領域に属する画素のうちの特定の部分領域である。参照領域内における近傍参照領域の配置は、任意である。また、参照領域内において近傍参照領域が「飛び地」状態であってもよい。しかし、特に、参照領域のうち、比較的対象領域に近い位置の領域を近傍参照領域とすることが好適である。領域の構成の具体例については、後で、図面を参照しながら説明する。
そして、参照領域の画素値を入力側とし、対象領域の画素値の予測値を出力側とするニューラルネットワークにおいて、近傍参照領域に属する画素については、近傍参照領域以外の参照領域の画素とは、異なる接続形態とする。
【００６８】
図７は、本実施形態における画素内の領域の配置の一例を示す概略図である。図示するのは、縦１６画素×横１６画素の合計２５６画素で構成される画素のマトリックスである。これら２５６個の画素は、参照領域と、対象領域とに分かれる。
【００６９】
具体的には、第９行から第１６行までの範囲に属し、且つ第９列から第１６列までの範囲に属する画素が、対象領域の画素である。対象領域には、縦８画素×横８画素の合計６４画素が含まれている。図中において、対象領域の画素には、ｐ１，ｐ２，・・・，ｐ６４というラベルを付与している。これらのラベルは、対象領域内の、最も左上の画素をｐ１とし、そこからまず右方向に順次番号を進め、右端（第１６列）に達した後はまた、左端の次の行から順次番号を進める形で付与されている。そして、最も右下の画素（第１６行，第１６列）のラベルがｐ６４である。
【００７０】
次に、合計２５６画素のうちの、上記の対象領域以外の１９２画素が、参照領域の画素である。言い換えれば、第１行目から第８行目までの範囲か、あるいは第１列目から第８列目までの範囲の、少なくともいずれかに属する画素が、参照領域の画素である。
【００７１】
そして、参照領域の画素のうち、特に、対象領域の画素に、縦、横、あるいは斜めに、隣接している（距離が１画素）画素を、近傍参照領域としている。言い換えれば、第８列目における第８行目から第１６行目までの画素と、第８行目における第８列目から第１６列目までの画素との集合が、近傍参照領域の画素である。つまり、近傍参照領域は、１７個の画素を含む。近傍対象領域の画素には、ｒ１，ｒ２，・・・，ｒ１７というラベルを付与している。近傍参照領域の縦のラインの最も下の画素（第１６行，第８列）のラベルがｒ１である。その画素から順次上に数字を進め、近傍参照領域の縦・横の角の画素（第８行，第８列）のラベルがｒ９である。その画素から、右に順次数字を進め、近傍参照領域の横のラインにおける最も右の画素（第８行，第１６列）のラベルがｒ１７である。
【００７２】
また、参照領域の画素のうち、上記の近傍参照領域には属さない残りの画素（計１７５個の画素）には、ｒ１８，ｒ１９，・・・，ｒ１９２というラベルを付与している。ラベルの数字の順序は、図示する通りである。
【００７３】
上記のように参照領域（そのさらに部分領域が近傍参照領域）と対象領域を設けたことを前提として、ニューラルネットワークの具体的な構成例は、次の通りである。
まず、近傍参照領域の画素値列から対象領域の画素値列へのニューロン接続のネットワークは、３層以上の多層パーセプトロンであることを基本構成とする。
また、そのネットワークに重畳する形で、近傍参照領域内の画素値列から、前記多層パーセプトロンの中間層（ただし、前記基本構成の入力層に隣接するニューロンを除く）に属するニューロン、または出力層に属するニューロンに至る、短絡的な接続（スキップレイヤー結合）を設ける。言い換えれば、ネットワークは、近傍参照領域内の画素値列（入力層のニューロン）から、少なくとも一層をスキップして多層パーセプトロンの中間層または出力層に属するニューロンへ至る短絡的な接続を有する。
【００７４】
図７に示した参照領域、近傍参照領域、および対象領域の配置を前提としたとき、既に説明した図５に示すニューラルネットワークは、本実施形態による画面内予測装置を構成するニューラルネット枠である。つまり、本実施形態では、図７における近傍参照領域に属する画素ｒ１，ｒ２，・・・，ｒ１７の各画素値は、ニューラルネットワークの入力層のうち、スキップレイヤー結合を有するニューロン（図５におけるニューロン群６１）に接続される。一方、参照領域には属するものの近傍参照領域には属さない画素ｒ１８，ｒ１９，・・・，ｒ１９２の各画素値は、ニューラルネットワークの入力層のうち、スキップレイヤー結合を有しないニューロン（図５におけるニューロン群６２）に接続される。そして、このニューラルネットワークの出力層からの信号値列（図５における信号値列６３）が対象領域の画素ｐ１，ｐ２，・・・，ｐ６４の画素値列の予測値である。
【００７５】
本実施形態では、近傍参照領域を、参照領域内の、特に対象領域の近傍に設けた。そして、図５に示したニューラルネットワークの構成として、入力層の一部においてスキップレイヤー結合を有するニューロン群を設けた。そして、参照領域に含まれる画素の画素値列のうち、近傍参照領域に含まれる画素の画素値列を、入力層のニューロンのうちのスキップレイヤー結合を有するニューロン群（図５における６１）に割り当てた。そして、参照領域に含まれる画素の画素値列のうち、近傍参照領域には含まれない画素の画素値列を、入力層のニューロンのうちのスキップレイヤー結合を有しないニューロン群（図５における６２）に割り当てた。つまり、図５の例では、第１中間層に含まれる各ニューロンは、参照領域に含まれる画素（近傍参照領域に含まれる画素も、含まれない画素も）の画素値に対応するニューロンからの直接の接続による入力を有する。また、第２中間層に含まれるニューロンは、近傍参照領域に含まれる画素の画素値に対応する入力層のニューロンからの直接の接続による入力を有し、第１中間層に含まれる各ニューロンからの直接の接続による入力を有する。しかし、第２中間層に含まれるニューロンは、近傍参照領域に含まれない画素の画素値に対応する入力層のニューロンからは、直接の接続による入力を有さない。
上記のような構成が生み出す作用の一つは、第１中間層が実質的にモード決定の役割を担うことであり、この作用が、画素値の予測の精度を向上させる。
【００７６】
なお、上述した実施形態における画面内予測装置、画像符号化装置、画像復号装置の各装置の機能の少なくとも一部をコンピューターで実現するようにしても良い。その場合、この機能を実現するためのプログラムをコンピューター読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピューターシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピューターシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【００７７】
以上、複数の実施形態を説明したが、さらに次のような変形例でも実施することが可能である。
【００７８】
［変形例１：参照領域と対象領域の配置］
第１実施形態および第２実施形態において、画像内の、参照領域と対象領域とのそれぞれの画素の配置の例を説明した（図２，図７）。実際には、例示したそれらの例による画素の配置だけでなく、他の配置を用いるようにしてもよい。また、参照領域および対象領域のそれぞれのサイズ（画素数）を変えてもよい。また、参照領域と対象領域とを合わせた領域の形状は、長方形には限られない。以下に、参照領域と対象領域の配置の変形例を説明する。
【００７９】
図８は、参照領域と対象領域の配置の例を示す概略図である。同図に示す配置では、参照領域内に特に近傍参照領域を設けていない。つまり、参照領域内において、近傍参照領域と近傍参照領域以外の領域とは特に区別されない。そして、対象領域は、縦Ｌ画素×横Ｌ画素（ただし、Ｌは自然数）の、ｎ個（ｎ＝Ｌ×Ｌ）の画素を含んでいる。対象領域に含まれる画素には、ｐ１，ｐ２，・・・，ｐｎというラベルを付与している。そして、参照領域は、上記の対象領域の上側と左側とをカバーするＬ字（逆Ｌ字）型の領域である。参照領域に含まれる画素には、ｒ１，ｒ２，・・・，ｒｍというラベルを付与している。このように対象領域の上側と左側に参照領域が存在する配置は、上側から、そして左側から、順にブロックごとに符号化していく場合に好適である。同図に示す領域の配置の特徴は、対象領域よりも上側に存在する参照領域の部分が、水平方向の位置において、対象領域の最右側の画素よりも、さらに右側に出ている点である。具体的には、対象領域の横方向のサイズがＬ［画素］であり、対象領域の最右側の画素よりも、水平方向においてさらにＬ［画素］分右側まで、参照領域の画素が出ている。また、垂直方向においても同様であり、対象領域よりも左側に存在する参照領域の部分が、垂直方向の位置において、対象領域の最下側の画素よりも、さらに下側に出ている点である。具体的には、対象領域の縦方向のサイズがＬ［画素］であり、対象領域の最下側の画素よりも、垂直方向においてさらにＬ［画素］分下側まで、参照領域の画素が出ている。
【００８０】
なお図８では、画像のブロックごとの符号化を上側からそして左側から行っていく場合の参照領域と対象領域の配置について説明した。例えば、図示した配置を、９０度、１８０度、あるいは２７０度回転させれば、他の方向から順次ブロック化を行っていく場合にも適した配置とすることができる。
また図８では、参照領域の厚み（短手方向の画素サイズ）が２［画素］の場合を例示したが、この厚みのサイズも、任意である。
【００８１】
図９は、参照領域と対象領域の配置の例を示す概略図である。同図に示す配置では、参照領域内に特に近傍参照領域を設けている。つまり、参照領域内において、近傍参照領域と近傍参照領域以外の領域とが区別される。
そして、対象領域は、縦Ｌ画素×横Ｌ画素（ただし、Ｌは自然数）の、ｎ個（ｎ＝Ｌ×Ｌ）の画素を含んでいる。対象領域に含まれる画素には、ｐ１，ｐ２，・・・，ｐｎというラベルを付与している。そして、参照領域は、上記の対象領域の上側と左側とをカバーするＬ字（逆Ｌ字）型の領域である。参照領域に含まれる画素には、ｒ１，ｒ２，・・・，ｒｍというラベルを付与している。このように対象領域の上側と左側に参照領域が存在する配置は、上側から、そして左側から、順にブロックごとに符号化していく場合に好適である。
参照領域のうち、逆Ｌ字の内側の部分の所定の厚さ（図示する例では、厚さ１［画素］）の部分が、近傍参照領域である。言い換えれば、図示する例では、参照領域に含まれる画素のうち、対象領域の左上端の画素のさらに左上に配置された画素を含み、その画素と同行に存在してより右側の画素は、近傍参照領域に属する画素である。また、対象領域の左上端の画素のさらに左上に配置された画素を含み、その画素と同列に存在してより下側の画素は、近傍参照領域に属する画素である。
なお、図示する例では、近傍参照領域の厚み（短手方向の画素サイズ）が１［画素］の場合を例示したが、この厚みのサイズも、任意である。
同図に示す領域の配置の特徴は、対象領域よりも上側に存在する参照領域の部分が、水平方向の位置において、対象領域の最右側の画素よりも、さらに右側に出ている点である。これは、近傍参照領域についても、近傍参照領域以外の参照領域の部分についても同様である。具体的には、対象領域の横方向のサイズがＬ［画素］であり、対象領域の最右側の画素よりも、水平方向においてさらにＬ［画素］分右側まで、参照領域の画素が出ている。また、垂直方向においても同様であり、対象領域よりも左側に存在する参照領域の部分が、垂直方向の位置において、対象領域の最下側の画素よりも、さらに下側に出ている点である。これは、近傍参照領域についても、近傍参照領域以外の参照領域の部分についても同様である。具体的には、対象領域の縦方向のサイズがＬ［画素］であり、対象領域の最下側の画素よりも、垂直方向においてさらにＬ［画素］分下側まで、参照領域の画素が出ている。
なおここでは、画像のブロックごとの符号化を上側からそして左側から行っていく場合の参照領域と対象領域の配置について説明した。例えば、図示した配置を、９０度、１８０度、あるいは２７０度回転させれば、他の方向から順次ブロック化を行っていく場合にも適した配置とすることができる。
【００８２】
なお、近傍参照領域の有無という点に着目すれば、図８に示した領域の配置は、図２の配置の変形例であると言える。また、図９に示した領域の配置は、図７の配置の変形例であると言える。
そして、これら図８および図９の領域の配置に限らず、他の変形例（領域の形状やサイズの変形）による領域の配置を用いてもよいことは言うまでもない。
【００８３】
［変形例２：ニューラルネットワークの層の数］
実施形態では、使用するニューラルネットワークとして、入力層および出力層を含めて４層のニューラルネットワークを示した（図４，図５）。しかし、層の数は任意である。通常は、４層以上の構成とする。なお、層数を大きくしてもよいが、層数が大きくなるほど、学習処理による重み値の収束が遅くなる点に注意が必要である。
【００８４】
［変形例３：学習結果の伝達について］
オンラインでの学習では、画像符号化装置１側と、画像復号装置３側とで、同じ学習データに基づく学習を蓄積的に行っていく。このとき、適宜チェックポイントを設けて、画像符号化装置１側と画像復号装置３側の間で、チェックポイントのタイミングにおける学習結果の同期を図るような処理を行ってもよい。具体的には、チェックポイントのタイミングで、学習結果である重み値の集合を、一方の装置から他方の装置に伝達し、両装置側で学習結果である重み値を強制的に一致させる。
【００８５】
以上、この発明の実施形態および変形例について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【００８６】
以上説明した少なくとも一つの実施形態によれば、複数のニューロンの結合により実現される関数により、様々な画素値パターンにも対応して参照領域内の画素値列から対象領域の画素値列を予測することができる。
また、ニューロンが非線形性を有する場合、それらの複数のニューロンの結合で実現される非線形関数により、線形的な内挿演算や外挿演算のみでは実現できないような画素値パターンにも対応して参照領域内の画素値列から対象領域の画素値列を予測することができる。
また、短絡的な接続を有するニューロンを含む場合、近傍参照領域に属する画素の情報をより濃厚に出力層へ導くことが可能となり、より効率的な画像の予測が可能となる。
【産業上の利用可能性】
【００８７】
本発明は、画像（静止画像や動画像）の配信、流通等に関する産業に利用可能である。
【符号の説明】
【００８８】
１  画像符号化装置
２  伝送・蓄積装置
３  画像復号装置
４  ニューロン
５  ニューラルネットワーク
１０  ブロック分割部
１１  メモリ
１２  画面内予測装置（予測装置）
１３  減算部
１４  変換部
１５  量子化部
１６  エントロピー符号化部
１７  逆量子化部
１８  逆変換部
１９  加算部
３０  エントロピー復号部
３１  逆量子化部
３２  逆変換部
３３  メモリ
３４  画面内予測装置（予測装置）
３５  加算部
５０  入力層
５０−０，５１−０，５２−０  定数
５１  第１中間層
５２  第２中間層
５３  出力層
６１  スキップレイヤー結合を有する入力層のニューロン群
６２  スキップレイヤー結合を有しない入力層のニューロン群
６３  出力層からの信号値列
１００  対象領域
１０１  参照領域
【図１】
2018125713.tif 000009
【図２】
2018125713.tif 000010
【図３】
2018125713.tif 000011
【図４】
2018125713.tif 000012
【図５】
2018125713.tif 000013
【図６】
2018125713.tif 000014
【図７】
2018125713.tif 000015
【図８】
2018125713.tif 000016
【図９】
2018125713.tif 000017