本願は、2018年12月13日に中国国家知識産権局に出願された「点群符号化方法及びエンコーダ」と題する中国特許出願第201811527959.5号に対する優先権を主張し、その全体が参照により本願に組み込まれる。
本願は符号化技術の分野に関し、とりわけ点群(点群)符号化方法及びコーデックに関する。
3Dセンサ(例えば、3Dスキャナ)技術の継続的な開発により、点群データの収集がより便利になり、収集された点群データのスケールがより大きくなっている。したがって、どのように点群データを効率的に符号化するかが解決されるべき緊急の問題となっている。
本願の実施形態は、符号化効率を改善するのを助けるために、点群符号化方法及びエンコーダを提供する。
第1の態様によれば、点群符号化方法が提供され、符号化すべき点群グループを複数のサブグループにグループ化することであって、該符号化すべき点群グループを複数のサブグループにグループ化することは、前記符号化すべき点群グループ内の点群の複数のフレームを予めグループ化して予めグループ化されたサブグループを取得することと、前記予めグループ化されたサブグループの特徴情報に基づいて、前記予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することと、を含み、前記特徴情報は、前記予めグループ化されたサブグループ内の点群の占有マップのサイズを表すのに用いられる、ことと、前記複数のサブグループに含まれる点群を符号化することと、を含む。点群の占有マップのサイズは点群の深度マップのサイズ及びテクスチャマップのサイズを決定し、点群の占有マップ、深度マップ及びテクスチャマップのサイズは、点群符号化プロセスにおけるビデオ符号化効率に影響する重要な要因である。したがって、この技術的解決策では、符号化すべき点群グループがグループ化されるサブグループは、予めグループ化されたサブグループ内の点群の占有マップのサイズを参照して決定される。これはビデオ符号化効率の向上を助け、それにより点群符号化効率が向上される。
可能な設計では、点群の占有マップのサイズを表すために点群の占有マップの面積、高さ又は幅が用いられる。
可能な設計では、予めグループ化されたサブグループの特徴情報は以下のうちの少なくとも1つを含み得る:予めグループ化されたサブグループのグローバル占有マップのサイズ(すなわち、情報1)、予めグループ化されたサブグループ内の点群の占有マップのサイズ(すなわち、情報2)及び予めグループ化されたサブグループのユニオンパッチ占有マップの領域(すなわち、情報3)。情報1及び情報3は、サブグループ内の点群の占有マップサイズ情報を間接的に表現し得る。情報2は、サブグループ内の点群の占有マップサイズ情報を直接表し得る。
可能な設計では、グローバル占有マップのサイズは、グローバル占有マップの高さによって表現され得る。確かに、これは本願のこの実施形態において限定されない。
可能な設計では、点群の占有マップのサイズは、点群の占有マップの高さによって表され得る。確かに、これは本願のこの実施態様において限定されない。
可能な設計では、サブグループ決定プロセスでは、予めグループ化することを1回以上行うことが通常必要があり(例えば、予めグループ化することは、ウインドウスライディング法又は二分法を用いて行われる)、予めグループ化することが行われる毎に1つの予めグループ化されたサブグループが決定され得る。なお、一部の実施形態では、特定のときに行われる予めグループ化することは、予めグループ化されたサブグループを再度取得するために再び行われ得る。
可能な設計では、本方法は、グローバルマッチングパッキングアルゴリズムを用いることにより予めグループ化されたサブグループの特徴情報を決定することをさらに含む。
可能な設計では、前記符号化すべき点群グループ内の点群の複数のフレームを予めグループ化して予めグループ化されたサブグループを取得することは、点群のj番目のフレームを開始点として用いることにより、前記符号化すべき点群グループにグループ化されていない点群をi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得することを含み、前記点群のj番目のフレームは、前記グループ化されていない点群内の点群の第1のフレームであり、i≧1であり、iは整数であり、j≧1であり、jは整数であり、前記i番目の予めグループ化されたサブグループは、前記点群のj番目のフレームから始まる点群の1つ以上のフレームを含む。それに対応して、前記予めグループ化されたサブグループの特徴情報に基づいて、前記予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することとは、前記i番目の予めグループ化されたサブグループの特徴情報に基づいて、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することを含む。本願のこの実施形態では、符号すべき点群に含まれるサブグループが決定された場合に、符号化すべき点群内の点群の順序に基づいて次のサブグループを決定する技術的解決策がサポートされることが分かる。
可能な設計では、前記i番目の予めグループ化されたサブグループの特徴情報に基づいて、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することは、前記i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することを含む。
可能な設計では、前記i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することは、前記i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が該所定の条件を満たさない場合に、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することを含む。このように、サブグループ内の点群がグローバルマッチングパッキングアルゴリズムを用いてパッキングされている場合に、符号化効率を改善するために符号化すべき点群グループ内の可能な限り多くの点群が所定の条件を満たすサブグループを形成する。
可能な設計では、前記i番目の予めグループ化されたサブグループの情報は、前記i番目の予めグループ化されたサブグループのグローバル占有マップのサイズを含む。それ対応して、前記i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が該所定の条件を満たさない場合に、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することは、前記i番目の予めグループ化されたサブグループのグローバル占有マップのサイズが第1の閾値以下であり、前記(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズが該第1の閾値よりも大きい場合に、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することを含む。
任意で、前記第1の閾値は所定の値(例えば、固定値)である。あるいは、前記第1の閾値は、候補パッキングアルゴリズムに基づいて得られる、前記符号化すべき点群グループ内の点群の占有マップの最大サイズに基づいて決定される。
可能な設計では、前記i番目の予めグループ化されたサブグループの特徴情報は、前記i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズを含む。それ対応して、前記i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合に、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することは、前記i番目の予めグループ化されたサブグループ内の大型点群のフレームの数が第1の所定の数以下であり、前記(i+1)番目の予めグループ化されたサブグループ内の大型点群のフレームの数が該第1の所定の数よりも大きい場合、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することであって、前記大型点群は、占有マップのサイズが第2の閾値以上の点群である、こと、又は候補パッキングアルゴリズムに基づいて得られる、前記i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、前記i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が第3の閾値以下であり、候補パッキングアルゴリズムに基づいて得られる、前記(i+1)番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、前記(i+1)番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が前記第3の閾値よりも大きい場合に、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定すること、を含む。
任意で、前記第2の閾値は所定の値である(例えば、固定値)。あるいは、前記大型点群は、グローバルマッチングパッキングアルゴリズムに基づいて得られた占有マップのサイズが前記第2の閾値以上である点群であり、前記第2の閾値は、候補パッキングアルゴリズムに基づいて得られる、前記符号化すべき点群グループ内の点群の占有マップの最大サイズに基づいて決定されるか又は候補パッキングアルゴリズムに基づいて得られる、現在の点群の占有マップのサイズに基づいて決定される。
可能な設計では、前記i番目の予めグループ化されたサブグループの特徴情報は、前記i番目の予めグループ化されたサブグループのグローバル占有マップのサイズを含む。それ対応して、前記i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することは、(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズが(i)番目の予めグループ化されたサブグループのグローバル占有マップのサイズに比べて第5の閾値以上減少した場合に、それに比べてi番目の予めグループ化されたサブグループがサブグループとして用いられることを示し、(i+1)番目の予めグループ化されたサブグループがサブグループとして用いられた場合に、グローバルマッチングパッキングアルゴリズムを用いることによりパッキングが行われると点群符号化効率が大幅に低下する。この場合、i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定される。これは、i番目の予めグループ化されたサブグループ内のグローバルマッチパッチのグループが(i+1)番目の予めグループ化されたサブグループ内のグローバルマッチパッチではないことを考慮して提案される技術的解決策である。
可能な設計では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのユニオンパッチ占有マップの面積を含む。それに対応して、i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予備グループ化サブグループが複数のサブグループの1つであると決定することは、(i+1)番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積が(i)番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積に比べて第4の閾値以上減少した場合に、それに比べてi番目の予めグループ化されたサブグループがサブグループとして用いられることを示し、(i+1)番目の予めグループ化されたサブグループがサブグループとして用いられた場合に、グローバルマッチングパッキングアルゴリズムを用いることによりパッキングが行われると点群符号化効率が大幅に低下する。この場合、(i)番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定される。これは、i番目の予めグループ化されたサブグループ内のグローバルマッチパッチのグループが(i+1)番目の予めグループ化されたサブグループ内のグローバルマッチパッチではないことを考慮して提案される技術的解決策である。
可能な設計では、前記符号化すべき点群グループにグループ化されていない点群を、点群のj番目のフレームを開始点として用いることによりi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得することは、前記点群のj番目のフレームを開始点として用いることにより、前記符号化すべき点群グループにグループ化されていない点群に対してウィンドウをi回目にスライドさせて前記i番目の予めグループ化されたサブグループを取得すること又は前記点群のj番目のフレームを開始点として用いることにより、前記符号化すべき点群グループにグループ化されていない点群に対して二分法をi回目に行うことにより前記i番目の予めグループ化されたサブグループを取得することを含む。異なる回数にウィンドウをスライドさせるのに用いられるステップサイズは固定又は可変であってもよい。任意で、i1回目にウィンドウをスライドさせるのに用いられるステップサイズは、i2回目にウィンドウをスライドさせるのに用いられるステップサイズ以上であり、1≦i1<i2≦iであり、i1及びi2の双方は整数である。さらに任意で、前記方法は、式N[i+1]=N[i]×cにしたがって、(i+1)回目にウィンドウをスライドさせるのに用いられるステップサイズN[i+1]を得ることをさらに含み、N[i]はi回目にウィンドウをスライドさせるのに用いられるステップサイズであり、cは、前記i番目の予めグループ化されたサブグループ内の大型点群のフレームの数に基づいて決定され、該大型点群は、占有マップのサイズが前記第2の閾値以上の点群である。例えば、cは式c=(a-b)/aを満たし、aは前記第1の所定の数であり、bは前記i番目の予めグループ化されたサブグループ内の大型点群のフレームの数である。
可能な設計では、前記符号化すべき点群グループにグループ化されていない点群を、点群のj番目のフレームを開始点として用いることによりi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得することは、前記点群のj番目のフレームを開始点として用いることにより、前記符号化すべき点群グループにグループ化されていない点群に対してi回目にウィンドウをスライドさせて前記i番目の予めグループ化されたサブグループを取得することを含む。それに対応して、前記i番目の予めグループ化されたサブグループの特徴情報に基づいて、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することは、
前記i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が該所定の条件を満たさない場合に、第2のステップサイズを用いることにより(i+1)番目の予めグループ化されたサブグループを再取得することであって、該第2のステップサイズは第1のステップサイズよりも小さく、該第1のステップサイズは(i+1)番目の予めグループ化されたサブグループが最初に得られるときに用いられるステップサイズである、ことと、再度取得された(i+1)番目の予めグループ化されたサブグループの特徴情報が前記所定の条件を満たさない場合に、第3のステップサイズを用いることにより(i+1)番目の予めグループ化されたサブグループを再取得し、該第3のステップサイズは前記第2のステップサイズよりも小さく、同様に、(i+1)番目の予めグループ化されたサブグループを再取得した回数が所定の回数に達するか又は最新の再取得した(i+1)番目の予めグループ化されたサブグループのステップサイズが所定のステップサイズ以下である場合に、最新の再取得した(i+1)番目の予めグループ化されたサブグループの特徴情報が前記所定の条件を満たさない場合に、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することを含む。このように、サブグループ内の点群がグローバルマッチングパッキングアルゴリズムを用いてパッキングされる場合に、符号化効率を改善するために、符号化すべき点群グループ内の可能な限り多くの点群が所定の条件を満たすサブグループを形成する。
これに基づいて、任意で、前記符号化すべき点群を複数のサブグループにグループ化することは、前記再取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数以下である場合に、この時に再取得された(i+1)番目の予めグループ化されたサブグループがサブグループであると決定すること、又は前記再取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数よりも大きい場合に、第4のステップサイズを用いることにより(i+2)番目の予めグループ化されたサブグループを取得することであって、前記第2のステップサイズと前記第4のステップサイズとの合計は前記第1のステップサイズよりも小さい、ことと、前記(i+2)番目の予めグループ化されたサブグループの特徴情報が前記所定の条件を満たす場合に、第5のステップサイズを用いることにより(i+3)番目の予めグループ化されたサブグループを取得することであって、前記第2のステップサイズ、前記第4のステップサイズ及び該第5のステップサイズの合計は前記第1のステップサイズよりも小さい、ことと、同様に、取得された(i+k)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が前記第2の所定の数以下の場合に、(i+k)番目の予めグループ化されたサブグループの特徴情報が前記所定の条件を満たす場合、前記(i+k)番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することであって、k≧2であり、kは整数である、ことと、を含む。このように、サブグループ内の点群がグローバルマッチングパッキングアルゴリズムを用いてパッキングされる場合に、符号化効率を改善するために、符号化すべき点群グループ内の可能な限り多くの点群が所定の条件を満たすサブグループを形成する。
可能な設計では、前記符号化すべき点群グループにグループ化されていない点群を、点群のj番目のフレームを開始点として用いることによりi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得することは、点群のj番目のフレームを開始点として用いることにより、前記符号化すべき点群グループにグループ化されていない点群に対してi回目に二分法を行うことにより前記i番目の予めグループ化されたサブグループを取得することを含む。それに対応して、前記i番目の予めグループ化されたサブグループの特徴情報に基づいて、前記予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することは、前記i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合に、前記i番目の予めグループ化されたサブグループは前記複数のサブグループのうちの1つであると決定することを含む。
可能な設計では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズを含む。それに対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすことは、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズが第1の閾値以下であること及び/又は(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズが、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズと比べて第5の閾値以上減少することを含む。
可能な設計では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループ内の点群のグローバル占有マップのサイズを含む。それに対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすことは、i番目の予めグループ化されたサブグループ内の大型点群のフレームの数が第1の所定の数以下であることであって、大型点群は占有マップのサイズが第2の閾値以上の点群であること又は候補パッキングアルゴリズムに基づいて得られる、前記i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、前記i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が第3の閾値以下であることを含む。第2の閾値については、上記の説明を参照されたい。
可能な設計では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのユニオンパッチ占有マップの面積を含む。それに対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすことは、(i+1)番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積がi番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積に比べて第4の閾値以上減少することを含む。
上記は、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす特定の実施を提供することが分かり得る。それに対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない実施が得られることがあり、(i+k)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすかどうかの実施が得られることがあり、k≧1であり、kは整数である。
第2の態様によれば、グループ化モジュール及び符号化モジュールを含むエンコーダが提供される。グループ化モジュールは、符号化すべき点群グループを複数のサブグループにグループ化するように構成され、符号化すべき点群グループを複数のサブグループにグループ化することは、前記符号化すべき点群グループ内の点群の複数のフレームを予めグループ化して予めグループ化されたサブグループを取得することと、前記予めグループ化されたサブグループの特徴情報に基づいて、前記予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することと、を含み、前記特徴情報は、前記予めグループ化されたサブグループ内の点群の占有マップのサイズを表すのに用いられる。符号化モジュールは前記複数のサブグループに含まれる点群を符号化するように構成されている。
グループ化モジュールにより行われるステップの特定の実施又は関連する内容の説明については、第1の態様の説明を参照されたい。ここでは、詳細については繰り返し説明しない。
第3の態様によれば、点群データ符号化装置が提供される。当該装置はメモリ及びエンコーダを含み得る。メモリは点群データを記憶するように構成されている。エンコーダは、第1の態様のいずれか1つ又は第1の態様の可能な設計で提供される点群符号化方法を行うように構成されている。
第4の態様によれば、互いに連結された不揮発性メモリ及びプロセッサを含む符号化装置が提供される。プロセッサは、メモリに記憶されたプログラムコードを呼び出して、第1の態様のいずれか1つ又は第1の態様の可能な設計で提供される点群符号化方法のステップの一部又は全てを行う。
第5の態様によれば、符号化装置が提供される。当該装置はメモリ及びプロセッサを含む。メモリはプログラムコードを記憶するように構成されている。プロセッサは、プログラムコードを呼び出して、第1の態様のいずれか1つ又は第1の態様の可能な設計で提供される点群符号化方法のステップの一部又は全てを行うように構成されている。
第6の態様によれば、コンピュータ読み取り可能記憶媒体が提供される。コンピュータ読み取り可能記憶媒体はプログラムコードを記憶する。プログラムコードがコンピュータ上で実行された場合、第1の態様のいずれか1つ又は第1の態様の可能な設計で提供される点群符号化方法のステップの一部又は全てが行われる。
第7の態様によれば、コンピュータプログラム製品が提供される。コンピュータプログラム製品がコンピュータ上で実行された場合、コンピュータは、第1の態様のいずれか1つ又は第1の態様の可能な設計で提供される点群符号化方法のステップの一部又は全てを行うことができる。
なお、上述のエンコーダ、点群データ符号化装置、符号化デバイス、符号化装置、コンピュータ読み取り可能記憶媒体又はコンピュータプログラム製品の有益な効果については、第1の態様で提供される対応する方法の実施形態の有益な効果を参照すべきである。ここでは、詳細について説明を繰り返さない。
図1は、本願の一実施形態に適用可能な例示の点群符号化システムの概略ブロック図である。
図2は、本願の実施形態に適用可能な例示のエンコーダの概略ブロック図である。
図3(a)~図3(c)は、本願の一実施形態に適用可能な、点群、点群のパッチ及び点群の占有マップの概略図である。
図4は、本願の一実施形態に適用可能な例示のデコーダの概略ブロック図である。
図5は、本願の一実施形態に係る点群符号化方法の概略フロー図である。
図6は、本願の一実施形態に係る、スライディングウインドウ、ステップサイズ及び予めグループ化されたサブグループ間の対応の概略図である。
図7は、本願の一実施形態に係るサブグループ決定方法の概略フロー図である。
図8Aは、本願の一実施形態に係るサブグループ決定プロセスの概略図である。
図8Bは、本願の一実施形態に係る別のサブグループ決定プロセスの概略図である。
図9A及び図9Bは、本願の一実施形態に係る別のサブグループ決定方法の概略フロー図である。
図10は、本願の一実施形態に係る、図9A及び図9Bに基づくサブグループ決定方法のプロセスの概略図である。
図11Aは、本願の一実施形態に係る、図9A及び図9Bに基づくサブグループ決定方法のプロセスの概略図である。
図11Bは、本願の一実施形態に係る、図9A及び図9Bに基づく別のサブグループ決定方法のプロセスの概略図である。
図12(a)及び図12(b)は、本願の一実施形態に係る、二分法と予めグループ化されたサブグループとの関係の概略図である。
図13は、本願の一実施形態に係る別のサブグループ決定方法の概略的なフロー図である。
図14は、本願の一実施形態に係る別のサブグループ決定方法の概略的なフロー図である。
図15は、本願の一実施形態に係るエンコーダの概略ブロック図である。
図16は、本願の一実施形態に係る符号化装置の実施の概略ブロック図である。
図1は、本願の実施形態に適用可能な例示の点群符号化システム1の概略ブロック図である。「点群符号化」又は「符号化」という用語は、概して点群エンコーディング又は点群復号化であり得る。点群符号化システム1内のエンコーダ100は、本願において提供される任意の点群符号化方法にしたがって符号化すべき点群を符号化し得る。点群符号化システム1内のデコーダ200は、エンコーダによって用いられる点群符号化方法に対応して本願において提供される点群復号方法にしたがって符号化すべき点群を復号化し得る。
図1に示すように、点群符号化システム1はソース装置10及び送り先装置20を含む。ソース装置10は符号化点群データを生成する。したがって、ソース装置10は点群符号化装置と呼ばれ得る。送り先装置20は、ソース装置10によって生成された符号化点群データを復号化し得る。したがって、送り先装置20は、点群復号化装置と呼ばれ得る。ソース装置10、送り先装置20又はソース装置10及び送り先装置20の双方の様々な実施解決策は、1つ以上のプロセッサと、1つ以上のプロセッサに連結されたメモリとを含み得る。メモリは、限定されないが、ランダムアクセスメモリ(Random access memory、RAM)、リードオンリーメモリ(Read-only memory、ROM)、電気的に消去可能なプログラマブルリードオンリーメモリ(electrically erasable programmable read-only memory、EEPROM)、フラッシュメモリ又は本明細書に記載されているように、コンピュータによりアクセス可能な命令又はデータ構造の形態で所望のプログラムコードを記憶するために用いることが可能な他の任意の媒体を含み得る。
ソース装置10及び送り先装置20は、デスクトップコンピュータ、モバイルコンピュータ装置、ノートブック(例えば、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、「スマート」フォン等のハンドヘルド電話機、テレビ受像機、カメラ、ディスプレイ装置、デジタルメディアプレーヤ、ビデオゲーム機、車載型コンピュータ及び同様の装置を含む様々な装置を含み得る。
送り先装置20は、リンク30を介してソース装置10から符号化点群データを受信し得る。リンク30は、符号化点群データをソース装置10から送り先装置20に移動させることができる1つ以上の媒体又は装置を含み得る。1つの例では、リンク30は、ソース装置10が符号化点群データを送り先装置20にリアルタイムで直接送信できるようにする1つ以上の通信媒体を含み得る。この例では、ソース装置10は、通信標準(例えば、無線通信プロトコル)に従って符号化点群データを変調し、変調した点群データを送り先装置20に送信し得る。1つ以上の通信媒体は、無線及び/又は有線の通信媒体、例えば無線周波数(radio frequency、RF)スペクトル又は1つ以上の物理的伝送線路を含み得る。1つ以上の通信媒体は、パケットベースのネットワークの一部を構成してもよく、パケットベースのネットワークは、例えばローカルエリアネットワーク、ワイドエリアネットワーク又はグローバルネットワーク(例えば、インターネット)である。1つ以上の通信媒体は、ルータ、スイッチ、基地局又はソース装置10から送り先装置20への通信を促進する他の装置を含み得る。
別の例では、符号化データは、出力インターフェイス140を介して記憶装置40に出力され得る。同様に、符号化点群データは、入力インターフェイス240を介して記憶装置40からアクセスされ得る。記憶装置40は、複数の分散されたデータ記憶媒体又はローカルにアクセスされるデータ記憶媒体、例えばハードドライブ、ブルーレイディスク、デジタル多用途ディスク(digital versatile disc、DVD)、コンパクトディスク読取り専用メモリ(compact disc read-only memory、CD-ROM)、フラッシュメモリ、揮発性若しくは不揮発性メモリ又は符号化点群データを記憶するように構成された任意の他の適切なデジタル記憶媒体のうちのいずれか1つを含み得る。
別の例では、記憶装置40は、ソース装置10によって生成された符号化点群データを記憶可能なファイルサーバ又は別の中間記憶装置に対応し得る。送り先装置20は、記憶された点群データにストリーミング送信又はダウンロードを通じて記憶装置40からアクセスし得る。ファイルサーバは、符号化点群データを記憶し、符号化点群データを送り先装置20に送ることができる任意の種類のサーバであり得る。ファイルサーバの例としては、(例えば、ウェブサイトで用いられる)ネットワークサーバ、ファイル転送プロトコル(file transfer protocol、FTP)サーバ、ネットワーク接続ストレージ(network attached storage、NAS)装置又はローカルディスクドライブが挙げられる。送り先装置20は、(インターネット接続を含む)任意の標準データ接続を通じて符号化点群データにアクセスし得る。標準的なデータ接続は、無線チャネル(例えば、Wi-Fi接続)、有線接続(たとえば、デジタル加入者回線(digital subscriber line、DSL)又はケーブルモデム)又はファイルサーバに記憶された符号化点群データにアクセスするのに好適なそれらの組み合わせを含み得る。記憶装置40からの符号化点群データの送信は、ストリーミング送信、ダウンロード送信又はそれらの組み合わせであり得る。
図1に示す点群符号化システム1は一例に過ぎず、本願における技術は、必ずしも点群符号化装置と点群復号装置との間のデータ通信を含まない点群符号化(例えば、点群エンコーディング又は点群復号化)装置に適用可能である。別の例では、データはローカルメモリから取り出され、ストリーミング方式等でネットワーク上に送信される。点群符号化装置は該データを符号化し、該データをメモリに記憶し得る及び/又は点群復号化装置はメモリから該データを取り出し、該データを復号化し得る。多くの例では、データを符号化し、メモリにデータを記憶する及び/又はメモリからデータを取り出し、データを復号化するだけで、互いに通信しない装置は符号化及び復号化を行う。
図1の例では、ソース装置10はデータソース120、エンコーダ100及び出力インターフェイス140を含む。一部の例では、出力インターフェイス140は変調器/復調器(モデム)及び/又は送信器(又はトランスミッタと呼ばれる)を含み得る。データソース120は、点群捕捉装置(例えば、カメラ)、以前捕捉された点群データを含む点群アーカイブ、点群コンテンツプロバイダから点群データを受信するように構成された点群フィードインインターフェイス及び/又は点群データを生成するように構成されたコンピュータグラフィックスシステム又はこれらの点群データソースの組み合わせを含み得る。
エンコーダ100は、データソース120からの点群データを符号化し得る。一部の例では、ソース装置10は、出力インターフェイス140を介して符号化点群データを送り先装置20に直接送信する。別の例では、符号化点群データは代替的に記憶装置40に記憶されてもよく、その結果、送り先装置20はその後に復号化及び/又は再生のために符号化点群データにアクセスする。
図1の例では、送り先装置20は入力インターフェイス240、デコーダ200及び表示装置220を含む。一部の例では、入力インターフェイス240は受信機及び/又はモデムを含む。入力インターフェイス240は、リンク30を介して及び/又は記憶装置40から符号化点群データを受信し得る。表示装置220は、送り先装置20と一体化され得るか又は送り先装置20の外に配置し得る。通常、表示装置220は復号化された点群データを表示する。複数の種類の表示装置220が存在してもよい。例えば、表示装置220は液晶ディスプレイ(liquid crystal display、LCD)、プラズマディスプレイ、有機発光ダイオード(organic light-emitting diodde、有機EL)ディスプレイ又は別の種類の表示装置であり得る。
図1には示されていないが、一部の態様では、エンコーダ100及びデコーダ200は、オーディオエンコーダ及びオーディオデコーダとそれぞれ一体化されてもよく、統合データストリーム又は別個のデータストリームにおけるオーディオ及びビデオの符号化を処理するために適切なマルチプレクサ-デマルチプレクサ(mutiplexer-demultiplexer、MUX-DEMUX)ユニット又は他のハードウェア及びソフトウェアを含み得る。一部の例では、必要に応じて、MUX-DEMUXユニットはITU H.223マルチプレクサプロトコル又はユーザデータグラムプロトコル(user datagram protocol、UDP)等の別のプロトコルに準拠し得る。
エンコーダ100及びデコーダ200は、例えば、1つ以上のマイクロプロセッサ、デジタル信号プロセッサ(digital signal processing、DSP)、特定用途向け集積回路(application specific integrated circuit、ASIC)、フィールドプログラマブルゲートアレイ(field-programmable gate array、FPGA)、個別ロジック、ハードウェア又はそれらの任意の組み合わせといった複数の回路のいずれか1つとしてそれぞれ実施され得る。本願が部分的にソフトウェアを用いることにより部分的に実施される場合、装置は適切な不揮発性コンピュータ読み取り可能記憶媒体にソフトウェアのために用いられる命令を記憶し、1つ以上のプロセッサを用いて命令をハードウェアで実行してこの本願における技術を実施する。(ハードウェア、ソフトウェア、ハードウェア及びソフトウェアの組み合わせ等を含む)上記の内容のいずれか1つは1つ以上のプロセッサとみなされ得る。エンコーダ100及びデコーダ200のそれぞれは、1つ以上のエンコーダ又はデコーダに含まれてもよく、エンコーダ又はデコーダは、対応する装置において組み合わされたエンコーダ/デコーダの一部として一体化され得る。
本願では、エンコーダ100は、例えばデコーダ200に何らかの情報を「送信する」又は「送る」する別の装置と概して呼ばれ得る。「送信」又は「送る」という用語は、圧縮された点群データを復号化するために用いられる構文要素及び/又は他のデータの伝送を概して意味し得る。伝送は、リアルタイムで又は略リアルタイムで起こり得る。あるいは、通信は一定期間後に起こり得る。例えば、通信は、符号化ビットストリーム中の構文要素が符号化の間にコンピュータ読み取り可能記憶媒体に記憶されたときに起きてもよく、そして復号化装置は構文要素が媒体に記憶された後の任意の時間に構文要素を取り出し得る。
図2は、本願の実施形態に適用可能な例示のエンコーダ100の概略ブロック図である。図2における説明の例として、MPEG(Moving Picture Expert Group)点群圧縮(Point Cloud Compression、PCC)符号化フレームワークが用いられる。図2の例では、エンコーダ100はパッチ情報生成モジュール101、パッキングモジュール102、深度マップ生成モジュール103、テクスチャマップ生成モジュール104、第1の充填モジュール105、画像ベース又はビデオベースの符号化モジュール106、占有マップ符号化モジュール107、補助情報符号化モジュール108、マルチプレクサモジュール109等を含み得る。加えて、エンコーダ100は点群フィルタリングモジュール110、第2の充填モジュール111、点群再構成モジュール112等をさらに含み得る。詳細は以下の通りである。
パッチ情報生成モジュール101は、方法を用いて点群のフレームを複数のパッチに分割し、生成されたパッチ等の関連情報を取得するように構成されている。パッチは、点群の1フレーム内のいくつかの点を含むセットである。通常、1つの接続領域が1つのパッチに対応する。パッチの関連情報は、限定されないが、点群を分割することによって得られるパッチの数、3次元空間における各パッチの位置情報、各パッチの法線座標軸のインデックス及び各パッチが3次元空間から2次元空間へ投影されるときに生成される深度マップ、各パッチの深度マップのサイズ(例えば、深度マップの幅及び高さ)、各パッチが3次元空間から2次元空間に投影されるときに生成される占有マップ等の情報のうちの少なくとも1つを含み得る。点群を分割することによって得られるパッチの数、各パッチの法線座標軸のインデックス、各パッチの深度マップのサイズ、点群内の各パッチの位置情報及び各パッチの占有マップのサイズ情報等の関連情報の一部は、補助情報として用いてもよく、符号化(すなわち、圧縮符号化)のために補助情報符号化モジュール108に送信され得る。各パッチの占有マップはパッキングのためにパッキングモジュール102に送信され得る。加えて、点群の占有マップ内の各パッチの特定の位置、各パッチの深度マップ等に関する情報が深度マップ生成モジュール103に送信され得る。
パッキングモジュール102が点群の占有マップを取得した後、第2の充填モジュール111は点群の占有マップを充填し、次いで、符号化のために占有マップ符号化モジュール107に点群の充填された占有マップを送信し得る。加えて、深度マップ生成モジュール103をガイドして点群の深度マップを生成し、テクスチャマップ生成モジュール104をガイドして点群のテクスチャマップを生成するために点群の占有マップが用いられ得る。
図3(a)~図3(c)は、本願の実施形態に適用可能な点群、点群のパッチ及び点群の占有マップの概略図である。図3(a)は点群のフレームの概略図である。図3(b)は、図3(a)に基づいて得られる点群のパッチの概略図である。図3(c)は、図3(b)に示すパッチを二次元平面上にマッピングすることによって得られるパッチの占有マップをパッキングすることによって得られる、点群の占有マップの概略図である。
深度マップ生成モジュール103は、点群の占有マップ並びに点群内の各パッチの占有マップ及び深度情報に基づいて点群の深度マップを生成し、生成された深度マップを第1の充填モジュール105に送信するように構成され、それにより第1の充填モジュール105が深度マップ内の空のピクセルを充填して充填深度マップが得られる。
テクスチャマップ生成モジュール104は、点群の占有マップ並びに点群内の各パッチの占有マップ及びテクスチャ情報に基づいて点群のテクスチャマップを生成し、生成されたテクスチャマップを第1の充填モジュール105に送るように構成され、それにより第1の充填モジュール105が受信したテクスチャマップ内の空のピクセルを充填して充填テクスチャマップが得られる。
第1の充填モジュール105は、画像ベース又はビデオベースの符号化のために、画像ベース又はビデオベースの符号化モジュール106に充填深度マップ及び充填テクスチャマップを送信する。後続のプロセスは以下のとおりである。
一方で、画像ベース又はビデオベースの符号化モジュール106、占有マップ符号化モジュール107及び補助情報符号化モジュール108は、得られた符号化結果(すなわち、ビットストリーム)をマルチプレクサモジュール109に送信し、マルチプレクサモジュール109は符号化結果を1つのビットストリームに統合し、ビットストリームが出力インターフェイス140に送信され得る。
他方で、画像ベース又はビデオベースの符号化モジュール106は、得られた符号化結果(すなわち、ビットストリーム)を点群再構成のために点群再構成モジュール112に送信し、再構成された点群が得られる(すなわち、点群の再構成された幾何学情報が得られる)。具体的には、点群の復号化深度マップを得るために、画像ベース又はビデオベースの符号化モジュール106によって得られた符号化深度マップに対してビデオ復号化が行われ、復号化された深度マップ、点群の占有マップ及び各パッチの補助情報を用いることにより点群の再構成された幾何情報がえら得る。点群の幾何学情報は、3次元空間における点群内の点(例えば、点群内の各点)の座標値を意味する。
任意で、点群再構成モジュール112は、カラーリングモジュールに点群のテクスチャ情報及び点群の再構成された幾何学情報をさらに送信し得る。カラーリングモジュールは、再構成された点群のテクスチャ情報を得るために、再構成された点群に色付けするように構成されている。
任意で、テクスチャマップ生成モジュール104は、点群の再構成された幾何学情報をフィルタリングすることにより点群フィルタモジュール110によって得られる情報に基づいて、点群のテクスチャマップをさらに生成し得る。
図2に示すエンコーダ100は一例にすぎないことが理解され得る。特定の実施では、エンコーダ100は図2に示すものよりも多くの又は少ないモジュールを含み得る。これは、本願のこの実施態様に限定されない。
1つの例では、本願のこの実施形態に適用された場合、パッキングモジュール102はグループ化サブモジュール(図示せず)及びパッキングサブモジュール(図示せず)を含み得る。グループ化サブモジュールは、コード化すべき点群グループを予めグループ化して予めグループ化されたサブグループを得るように構成されている。パッキングサブモジュールは、所定のパッキングアルゴリズム(例えば、グローバルマッチングパッキングアルゴリズム)に基づいて予めグループ化されたサブグループ内の点群内のパッチの占有マップをパッキングし、パッキングプロセス中に又はパッキングの後に得られた予めグループ化されたサブグループの特徴情報をグループ化サブモジュールに送信するように構成されている。グループ化サブモジュールは、コード化すべき点群グループを特徴情報に基づいてグループ化する。対応する例は以下の通りである。
1つの例では、パッキングモジュール102は、符号化すべき点群グループを複数のサブグループにグループ化する。符号化すべき点群グループをグループ化するプロセスにおいて、複数のサブグループに含まれる点群の占有マップが生成され、点群の占有マップが、深度マップ生成モジュール103、テクスチャマップ生成モジュール104及び第2の充填モジュール111に送信される。この場合、点群の占有マップを受信するモジュール及びモジュールに接続されるか又は通信するモジュールが互いに協働してエンコード機能を完成させる。
別の例では、パッキングモジュール102により行われるグループ化及びパッキングは、比較的お互いに独立している。それに対応して、パッキングモジュール102はグループ化サブモジュール(図示せず)及びパッキングサブモジュール(図示せず)を含み得る。符号化すべき点群グループをグループ化した後、グループ化サブモジュールはパッキングサブモジュールにグループ化結果を送信し、パッキングサブモジュールは、複数のサブグループに含まれる点群の占有マップを得るために、グループ化結果に基づいてパッキング作業を行う。点群の占有マップは、深度マップ生成モジュール103、テクスチャマップ生成モジュール104及び第2の充填モジュール111に送信される。この場合、パッキングサブモジュールと、点群の占有マップを受信するモジュールと、モジュールに接続されるか又は通信するモジュールとが協働して符号化機能を完成させる。
図4は、本願の実施形態に適用可能な例示のデコーダ200の概略ブロック図である。図4における説明の例として、MPEG PCC復号化フレームワークが用いられる。図4の例では、デコーダ200は、デマルチプレクサモジュール201、画像ベース又はビデオベースの復号化モジュール202、占有マップ復号化モジュール203、補助情報復号化モジュール204、点群幾何学情報再構成モジュール205、点群フィルタモジュール206及び点群テクスチャ情報再構成モジュール207を含み得る。詳細は以下の通りである。
デマルチプレクサモジュール201は、対応する復号化モジュールに入力ビットストリーム(すなわち、統合ビットストリーム)を送信するように構成されている。具体的には、符号化テクスチャマップを含むビットストリーム及び符号化された深度マップを含むビットストリームが画像ベース又はビデオベースの復号化モジュール202に送信され、符号化された占有マップを含むビットストリームが占有マップ復号化モジュール203に送信され、符号化された補助情報を含むビットストリームが補助情報復号化モジュール204に送信される。
画像ベース又はビデオベースの復号化モジュール202は、受信された符号化テクスチャマップ及び符号化深度マップを復号化し、復号化を通じて得られたテクスチャマップ情報を点群テクスチャ情報再構成モジュール207に送信し、復号化を通じて得られた深度マップ情報を点群幾何情報再構成モジュール205に送信するように構成されている。占有マップ復号化モジュール203は、受信した符号化占有マップを含むビットストリームを復号化し、復号化を通じて得られた占有マップ情報を点群幾何情報再構成モジュール205に送信するように構成されている。補助情報復号化モジュール204は、受信した符号化補助情報を復号化し、復号化を通じて得られた補助情報を示す情報を点群幾何学情報再構成モジュール205に送信するように構成されている。
点群幾何情報再構成モジュール205は、受信した占有マップ情報及び補助情報に基づいて点群幾何情報を再構成するように構成されている。点群フィルタモジュール206によってフィルタリングされた後、再構成された点群幾何学情報は点群テクスチャ情報再構成モジュール207に送信される。
点群テクスチャ情報再構成モジュール207は、再構成された点群を得るために点群のテクスチャ情報を再構成するように構成されている。
図4に示すデコーダ200は一例にすぎないことが分かる。特定の実施では、デコーダ200は図4に示すものよりも多くの又は少ないモジュールを含み得る。これは、本願のこの実施形態に限定されない。
本願の実施形態で提供される技術的解決策の理解を容易にするために、以下では、本願の実施形態で用いられる技術及び用語を説明する。
アンカーアルゴリズムはパッキングアルゴリズムである。具体的には、点群のフレームのパッチは特定の順序で、例えば、パッチの占有マップの幅/高さの降順(又は昇順)に配置される。そして、配置されたパッチの順序で点群の占有マップの利用可能な領域にパッチの占有マップが順次挿入されて点群の占有マップが得られる。
グローバルマッチングパッキングアルゴリズムは、点群の複数のフレームの単位でパッキングが行われるパッキングアルゴリズムであるため、点群の複数のフレームのうちのいずれか1つ内のいずれかのグローバルマッチパッチの占有マップの位置であって、点群のフレームの占有マップ内にある位置が、前述のグローバルマッチパッチとマッチ関係を有し、グローバルマッチパッチが位置する点群の占有マップ内にある位置に対応する。具体的には、本願の実施形態に適用可能なグローバルマッチングパッキングアルゴリズムは以下のステップを含み得る。
ステップ1:点群グループ内のグローバルマッチパッチを取得する。点群グループはN個の点群のフレームを含み、N≧2であり、Nは整数である。
点群のフレーム内のグローバルマッチパッチは、点群のフレーム内にあり、点群グループ内の点群のフレーム以外の点群の各フレーム内にあるパッチとマッチ関係を有するパッチである。加えて、パッチとマッチ関係を有するパッチはグローバルマッチパッチである。パッチとマッチ関係を有するパッチはターゲットパッチのマッチパッチであり、ターゲットパッチはパッチ又はパッチのマッチパッチである。任意で、点群のフレーム内のパッチの点群の別のフレーム内のマッチパッチは、点群の別のフレーム内にあるパッチであり、そのパッチとのインターセクションオーバーユニオン(interesection over union、IoU)が最大であり、所定のしきい値以上であるパッチであり得る。
任意のグローバルマッチパッチとマッチ関係を有するパッチの数はN-1である。
ステップ2:M組に対応するM個のユニオンパッチ占有マップ(すなわち、ユニオン占有マップ)を決定する。ここで、各組はN個のグローバルマッチパッチを含み、N個のグローバルマッチパッチは点群のN個のフレーム内でマッチ関係を有するパッチ(又は点群のN個のフレーム内でマッチ関係を有するパッチ)であり、任意で、m番目の組に対応するユニオンパッチ占有マップは、m番目のセット内の全てのグローバルマッチパッチの占有マップのユニットであり、1≦m≦Mであり、mとMの双方が整数である。
1つのセットに含まれるN個のグローバルマッチパッチが、点群のN個のフレーム内でマッチ関係を有するパッチであることは、N個のグローバルマッチパッチのそれぞれは、点群の1つのフレームに由来し(又は属し)、異なるグローバルマッチパッチは異なる点群に由来し、N個のグローバルマッチパッチはマッチ関係を有することが理解され得る。
グローバルマッチパッチが属するセットに対応するユニオンパッチ占有マップは、グローバルマッチパッチの占有マップを含む。
なお、本願のこの実施形態では、ユニオンパッチ占有マップを得るために用いられ、マッチ関係を有するグローバルマッチパッチは、「グローバルマッチパッチのグループ(又はグローバルマッチングパッチグループ)」と呼ばれ得る。本明細書には一般的な説明が記載されており、詳細について以下で説明されない。
ステップ3:グローバル占有マップ(すなわち、最終占有マップ)を得るためにM個のユニオンパッチ占有マップをパッキングする。ここでグローバル占有マップは、グローバル占有マップ内のM個のユニオンパッチ占有マップの位置を決定するのに用いられ、パッキングプロセスはグローバル占有マップを更新するプロセスとして考えられ得る。例えば、M個のユニオン占有マップは、最終占有マップを得るために、上から下、左から右の順でグローバル占有マップ内の利用可能な空間に配置される。
ステップ4:点群のN個のフレームの占有マップを得るために点群のN個のフレームのそれぞれをパッキングする。ここで、点群のn番目のフレーム内のm番目のグローバルマッチパッチの占有マップのものであり、点群のn番目のフレームの占有マップ内にある位置(第1の位置)が、M個のユニオンパッチ占有マップ内のm番目のユニオンパッチ占有マップのものであり、グローバル占有マップ内にある位置(第2の位置)に対応し、1≦n≦Nであり、nは整数である。
第1の位置が第2の位置に対応することは:第1の位置の座標値が第2の位置の座標値と同じであるか又は第1の位置を含む座標系における第1の位置の座標値が第2の位置を含む座標系における第2の位置の座標値と実質的に同じであるか又は第1の位置の座標値が第2の位置の座標値と異なるが、第2の位置を含む位置範囲が第1の位置を含む位置範囲を含むことを含み得る。第1の位置の座標値は、点群のn番目のフレームの占有マップ内の、点群のn番目のフレームの占有マップ内のm番目のグローバルマッチパッチの占有マップの位置座標によって表され得る。第2の位置の座標値は、グローバル占有マップ内のm番目のユニオンパッチ占有マップの位置座標によって表され得る。第1の位置を含む位置範囲は、m番目のグローバルマッチパッチの占有マップによって占有される領域であり、第2の位置を含む位置範囲は、m番目のユニオンパッチ占有マップによって占有される領域である。
1つの例では、関連内容の説明及び上述したグローバルマッチングパッキングアルゴリズムにおける特定の実施の説明については、限定されないが、例えば出願人によって先に出願された別の特許を参照されたい。
本願の実施形態における「少なくとも1つの(種類)」という用語は1つ以上の(種類)を含む。「複数の(種類)」とは2つの(種類)又は2より多い(種類)を意味する。例えば、A、B及びCのうちの少なくとも1つは、Aのみが存在する場合、Bのみが存在する場合、Cのみが存在する場合、A及びBの両方が存在する場合、A及びCの両方が存在する場合、B及びCの両方が存在する場合並びにA、B及びCが存在する場合を含む。本願の明細書では、「/」は特に指定のない限り「又は」を意味する。例えば、A/BはA又はBを表し得る。本明細書では、「及び/又は」は関連するオブジェクトを説明するための関連関係のみを記述し、3つの関係を存在し得ることを表す。例えば、A及び/又はBは、Aのみが存在する場合、A及びBの両方が存在する場合並びにBのみが存在する場合という3つの場合を表し得る。加えて、本願の実施形態における技術的解決策の明確な説明の便宜上、本願の実施形態では、「第1」及び「第2」等の用語は、その機能及び目的が基本的に同じである同一のオブジェクト又は同様のオブジェクトを区別するために用いられる。当業者であれば、「第1」及び「第2」等の用語は数量又は実行順序を限定することを意図したものではなく、「第1」及び「第2」等の用語は明確な違いを示さないことが分かる。
アンカーアルゴリズムを用いる場合と比較して、複数の点群内でマッチ関係を有するパッチのものであり、グローバルマッチングパッキングアルゴリズムを用いることによるパッキングを通じて得られる占有マップは、パッチが位置する点群の占有マップ内の位置に対応することが理解され得る。これは、点群符号化性能を改善するのに役立つ。しかしながら、点群の占有マップのものである、グローバルマッチングパッキングアルゴリズムを用いて得られるサイズはアンカーアルゴリズムを用いて得られるサイズよりも概して大きい。これは、点群符号化性能を低下させる。これに基づいて、本願の実施形態において提供されるいくつかの実施形態の基本的な考え方は、次のとおりである。点群符号化性能の2つの側面の影響のバランスがとられるため、符号化すべき点群内にあり、点群の少なくとも2つのフレームを含むサブグループはグローバルパッキングアルゴリズムに基づいてパッキングされる場合、全体的な性能は比較的高くなる。本明細書におけるアンカーアルゴリズムは別のパッキングアルゴリズムで置き換えてもよい。
本願の一部の他の実施形態では、複数のパッキングアルゴリズムの符号化性能を比較する必要はない。その代わり、符号化すべき点群グループは、1つのパッキングアルゴリズムに基づいて直接グループ化される。パッキングアルゴリズムは、例えば、限定されないがグローバルマッチングパッキングアルゴリズムである。
以下では、本願の実施形態で提供される点群符号化方法について説明する。なお、図1に示す点群符号化システムを参照して、以下のいずれかの点群符号化方法は、点群符号化システム内のソース装置10によって行われ、より具体的にはソース装置10内のエンコーダ100によって行われ得る。
図5は、本願の一実施形態に係る点群符号化方法の概略フロー図である。この方法は以下のステップを含み得る。
S101:符号化すべき点群グループを複数のサブグループにグループ化することであって、該符号化すべき点群グループを複数のサブグループにグループ化することは、前記符号化すべき点群グループ内の点群の複数のフレームを予めグループ化して予めグループ化されたサブグループを取得することと、前記予めグループ化されたサブグループの特徴情報に基づいて、前記予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することと、を含み、前記特徴情報は、前記予めグループ化されたサブグループ内の点群の占有マップのサイズを表すのに用いられる。
点群の占有マップのサイズ情報は、点群の占有マップの面積、高さ、幅等であり得る。点群の占有マップのサイズ情報が占有マップの領域である例を以下の説明で用いる。本明細書では一般的な説明が提供され、以下では詳細は記載されていない。
符号化すべき点群グループは点群の複数のフレームを含み、点群の複数のフレームは一時的に連続していてもいいし、非連続であってもよい。例えば、符号化すべき点群グループは、フレームの1つ以上のグループ(group of frame、GOF)であってもよく、1つのGOFは点群の32個のフレームを含み得る。もちろん、これに限定されない。
符号化すべき点群をグループ化することにより得られたサブグループは、点群の1つ以上のフレームを含み得る。異なるサブグループに含まれる点群のフレームの数は等しくてもいいし、等しくなくてもよい。
予めグループ化するのに用いられる方法は、本願の本実施形態で限定されていない。例えば、符号化すべき点群グループ内の点群の複数のフレームは、ウインドウスライディング法又は二分法を用いることにより予めグループ化され得る。
予めグループ化されたサブグループ内の点群の占有マップのサイズはグローバルマッチングパッキングアルゴリズム又は別のパッキングアルゴリズム、例えばアンカーパッキングアルゴリズムに基づいて決定され得る。
予めグループ化されたサブグループの特徴情報は、予めグループ化されたサブグループ内の点群の占有マップのサイズを表すために直接的に又は間接的に用いられる情報であり得る。例えば、特徴情報は、以下の情報1~情報3のうちの少なくとも1つを含み得る。
情報1は、予めグループ化されたサブグループのグローバル占有マップのサイズである。任意で、予めグループ化されたサブグループのグローバル占有マップのサイズは、予めグループ化されたサブグループのグローバル占有マップ(すなわち、グローバル占有マップの面積)の高さ(height)及び幅(weight)の積によって表され得る。任意で、サブグループ決定プロセスにおいて、異なる予めグループ化されたサブグループの取得されたグローバル占有マップの幅が同じである場合、予めグループ化されたサブグループのグローバル占有マップのサイズは、予めグループ化されたサブグループのグローバル占有マップの高さによって表され得る。同様に、サブグループ決定プロセスにおいて、異なる予めグループ化されたサブグループの取得されたグローバル占有マップの高さが同じである場合、予めグループ化されたサブグループのグローバル占有マップのサイズは、予めグループ化されたサブグループのグローバル占有マップの幅によって表され得る。予めグループ化されたサブグループのグローバル占有マップのサイズは、予めグループ化されたサブグループ内の点群の各フレームの占有マップの最小サイズを定義するため、予めグループ化されたサブグループ内の点群の占有マップのサイズは、予めグループ化されたサブグループのグローバル占有マップのサイズを用いて間接的に表され得る。
情報2は、予めグループ化されたサブグループ内の点群の占有マップのサイズであり、例えば、予めグループ化されたサブグループ内の点群の1つ以上のフレーム(例えば、全てのフレーム)の占有マップのサイズである。任意で、予めグループ化されたサブグループのグローバル占有マップのサイズは、予めグループ化されたサブグループの占有マップ(すなわち、占有マップの面積)の高さ及び幅の積によって表され得る。任意で、サブグループ決定プロセスにおいて、異なる点群の取得されたグローバル占有マップの幅が同じである場合、予めグループ化されたサブグループ内の点群の占有マップのサイズは、予めグループ化されたサブグループ内の点群の占有マップの高さによって表され得る。同様に、サブグループ決定プロセスにおいて、異なる点群の取得された占有マップの高さが同じである場合、予めグループ化されたサブグループ内の点群の占有マップのサイズは、予めグループ化されたサブグループ内の点群の占有マップの幅によって表され得る。情報2は、予めグループ化されたサブグループ内の点群の占有マップのサイズを表すのに直接用いられる情報である。
情報3は、予めグループ化されたサブグループのユニオンパッチ占有マップの領域である。前述の説明から、予めグループ化されたサブグループの複数のユニオンパッチ占有マップが存在し得ることが分かる。予めグループ化されたサブグループのユニオンパッチ占有マップの面積は、予めグループ化されたサブグループのユニオンパッチ占有マップの1つ以上(例えば、全て)の面積であり得る。予めグループ化されたサブグループのユニオンパッチ占有マップの面積(例えば、合計面積)は、予めグループ化されたサブグループ内の点群の占有マップの面積をある程度反映し得るため、予めグループ化されたサブグループ内の点群の占有マップのサイズは、予めグループ化されたサブグループのユニオンパッチ占有マップの面積(例えば、合計面積)によって間接的に表され得る。
S102:複数のサブグループに含まれる点群を符号化する。詳細は次のとおりである。
一部の実施では、グループ化されたサブグループを単位として用いることにより複数のサブグループに含まれる点群を別々にパッキングして、符号化すべき点群グループ内の各点群の占有マップを得る。次に、各点群の占有マップを埋めて、ビデオ符号化を行う。あるいは、点群の占有マップをガイドとして用いることにより、点群の深度マップ、点群のテクスチャマップ等が生成される。特定のプロセスについては、図2に示すエンコーダ100の動作原理の前述の説明を参照するか又は従来技術を参照されたい。ここでは、詳細について繰り返し説明しない。
一般に、1つのサブグループ内の点群は同じパッキングアルゴリズムを用いることによりパッキングされる。異なるサブグループに点群をパッキングするのに用いられるパッキングアルゴリズムは同じであってもいいし、異なっていてもよい。本願の本実施形態ではこれに限定されない。任意で、予めグループ化されたサブグループの特徴情報がグローバルマッチングパッキングアルゴリズムに基づいて取得され、1つのサブグループが点群の複数のフレームを含む場合、サブグループ内の点群はグローバルマッチングパッキングアルゴリズムに基づいてパッキングされ得る。
なお、1つ以上のサブグループ内の点群の占有マップが、符号化すべき点群グループをグループ化するプロセスで取得され、S102が行われる場合、1つのサブグループ又は複数のサブグループ内の点群に対してパッキングステップが行われない場合がある。
本願の本実施形態で提供される点群符号化方法では、予めグループ化されたサブグループの特徴情報を参照して符号化すべき点群がグループ化され、特徴情報は、予めグループ化されたサブグループ内の点群の占有マップのサイズを表すのに用いられる。点群の占有マップのサイズは、点群の深度マップのサイズ及びテクスチャマップのサイズを決定し、点群の占有マップ、深度マップ及びテクスチャマップのサイズは、点群符号化プロセスにおけるビデオ符号化効率に影響を与える主要な要因である。したがって、符号化すべき点群グループがグループ化されるサブグループは、予めグループ化されたサブグループ内の点群の占有マップのサイズを参照して決定される。これはビデオ符号化効率の向上を助け、それにより点群符号化効率が改善される。
任意で、S101は以下のステップS101-1~S101-2を含み得る。
S101-1:点群のj番目のフレームを開始点として用いることにより、符号化すべき点群グループにグループ化されていない点群をi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得する。点群のj番目のフレームは、グループ化されていない点群内の点群の第1のフレームであり、i≧1であり、iは整数であり、j≧1であり、jは整数であり、前記i番目の予めグループ化されたサブグループは、点群のj番目のフレームから始まる点群の1つ以上のフレームを含む。
S101-2:i番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループがサブグループであると決定する。
本願の本実施形態では、符号化すべき点群グループに含まれるサブグループを決定する場合に、符号化すべき点群グループ内の点群の順序に基づいて次のサブグループを決定する技術的解決策がサポートされることがこの任意の方法から分かる。サブグループ決定プロセスにおいて、予めグループ化することは、通常、1回以上行う必要があり(例えば、ウィンドウを1回以上スライドするか又は二分法を1回以上行う)、予めグループ化を行う毎に1つの予めグループ化されたサブグループが決定され得る。
S101-1は、S101における「符号化すべき点群グループ内の点群の複数のフレームを予めグループ化して予めグループ化されたサブグループを取得すること」の特定の実施であり、S101-2は、S101における「予めグループ化されたサブグループの特徴情報に基づいて、予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定すること」の特定の実施である。
以下では、読者の理解を容易にするために、ウィンドウをスライドさせることにより予めグループ化を実施するプロセスにおけるいくつかの条件について簡潔に説明する。
ウィンドウを一回スライドさせると、点群の1つ以上のフレームを周回できる。本願の本実施形態では、「サブグループ決定プロセスにおいて、i=1の場合、i回目にウィンドウをスライドさせることにより周回される点群のフレームの数は、i回目+1にウィンドウをスライドさせるのに用いられるステップサイズと等しいか又はi≧2の場合、i回目にウィンドウをスライドさせることにより周回される点群のフレームの数は、i回目にウィンドウをスライドさせるのに用いられるステップサイズと等しい」例を用いることにより説明が全て提供される。、本願の本実施形態では、「i≧1の場合、i回目にウィンドウをスライドさせることにより周回される点群のフレームの数は、i回目にウィンドウをスライドさせるのに用いられるステップサイズと等しい」場合は除外されない。この場合、当業者であれば、下記の条件の説明に基づき且つ創造的努力によらず、合理的に推論してこの件に適用可能な条件を得るだろう。
異なる回にウィンドウをスライドさせるのに用いられるステップサイズは等しくてもいいし、等しくなくてもよい。
i回目にウィンドウをスライドさせることは、符号化すべき点群グループにグループ化されていない点群内の点群の第1のフレームからiステップサイズスライドさせるプロセスであり、iステップサイズにおけるt番目のステップサイズは、t回目にウィンドウをスライドさせるのに用いられるステップサイズであり、1≦t≦iであり、tは整数である。一般に、i≧2の場合に、i回目にウィンドウをスライドさせることは、符号化すべき点群グループ内の周回された点群の最後のフレームから始まる1つのステップサイズをスライドさせることとみなしてもよく、ステップサイズは、i回目にウィンドウをスライドさせるのに用いられるステップサイズであることが理解され得る。
i番目の予めグループ化されたサブグループは、1回目からi回目にウィンドウをスライドさせることにより周回された点群を含むセットである。一般に、i番目の予めグループ化されたサブグループに含まれる点群のフレームの数は、1回目からi回目にウィンドウをスライドさせるのに用いられるステップサイズの合計+1に等しい。
図6は、本願の一実施形態に係る、スライディングウィンドウ、ステップサイズ及び予めグループ化されたサブグループ間の対応の概略図である。図6において、符号化すべき点群グループは点群1~32を含む。図6の矩形のボックスは点群のフレームを表し、矩形のボックス内の数字は点群の数を表す。毎回ウィンドウをスライドさせるのに用いられるステップサイズは3である。すなわち、ウィンドウを一回スライドすることにより、点群の3つのフレームを周回することができる。加えて、グループ化されたサブグループはサブグループ1及びサブグループ2であり、サブグループ1は点群1~4を含むセットであり、サブグループ2は点群5を含むセットである。これに基づき、サブグループ3を決定するプロセスでは、点群6を開始点として用いることにより1回目にウィンドウをスライドした後で周回される点群は点群6~9である。この場合、得られた第1の予めグループ化されたサブグループは点群6~9を含むセットである。点群6を開始点として二回目にウィンドウをスライドさせることは、1回目にウィンドウをスライドさせることで周回された点群(すなわち、点群9)の最後のフレームから1つのステップサイズスライドすることである。したがって、2回目にウィンドウがスライドされた後で周回される点群は、点群10~12である。この場合、得られた第2の予めグループ化されたサブグループは、点群6~12を含むセットである。
異なるサブグループ決定プロセスでは、iの初期値は常に1である。別段記載がない限り、本願の本実施形態で説明したi回目にウィンドウをスライドさせることは、サブグループ決定プロセスでi回目にウィンドウをスライドさせることである。同様に、i番目の予めグループ化されたサブグループは、サブグループ決定プロセスにおけるi番目の予めグループ化されたサブグループである。本明細書では一般的な説明を提供し、詳細については以下に記載していない。
以下では特定の例を用いて、本願の本実施形態で提供される、ウィンドウスライディング法を用いることにより予めグループ化することが実施される場合に、符号化すべき点群グループ内のサブグループを決定するための方法を説明する。詳細については、以下の実施形態1又は実施形態2を参照されたい。
実施形態1
図7は、本願の一実施形態に係るサブグループ決定方法の概略フロー図である。図7に示す方法は以下のステップを含む。
S201:点群のj番目のフレームを開始点として用いることにより、1回目にウィンドウをスライドさせて第1の予めグループ化されたサブグループを取得する。具体的には、1回目にウィンドウをスライドさせることにより周回される点群を含むセットが第1の予めグループ化されたグループとして用いられ、点群のj番目のフレームは、符号化すべき点群グループにグループ化されていない点群内の点群の第1のフレームである。
1≦j≦Jであり、Jは符号化すべき点群グループに含まれる点群のフレームの数である。符号化すべき点群グループの第1のサブグループを決定するのに図7に示す方法が用いられる場合、jは1に等しい。符号化すべき点群グループの第2のサブグループ又は第2のサブグループの後の任意のサブグループを決定するのに図7に示す方法が用いられる場合、jは、第1から(i-1)番目のサブグループに含まれる点群のフレームの数の合計+1と等しい。
S202:第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たしているかどうかを判定する。
Noの場合はS203が行われる。Yesの場合はS204が行われる。
S203:第1の予めグループ化されたサブグループ内の点群の第1のフレームを第1のサブグループとして用いる。
S203が行われた後、プロセスが終了する。
例えば、図6を参照して、サブグループ2は、サブグループ2を決定するプロセスにおいて、得られた第1の予めグループ化されたサブグループ(すなわち、点群5~8を含むセット)が所定の条件を満たさない、点群の1つのフレームを含むセットであることが分かる。
S204:(i+1)回目にウィンドウをスライドして(i+1)番目の予めグループ化されたサブグループを取得する。具体的には、1回目から(i+1)回目にウィンドウをスライドさせることにより周回された点群を含むセットが(i+1)番目の予めグループ化されたグループとして用いられる。
i≧1であり、iは整数である。iの初期値は1である。
S205:(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすかどうかを判定する。
Yesの場合はS206が行われる。Noの場合はS207が行われる。
S206:i+2をi+1に割り当てる。S206が行われた後、S204に戻って行われる。
S207:i番目の予めグループ化されたサブグループがサブグループであると決定する。
なお、本実施形態におけるS204を、i回目にウィンドウをスライドしてi番目の予めグループ化されたサブグループを取得することに置き換えてもよい。i≧2であり、iは整数である。iの初期値は2である。この場合、S205は、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすかどうか判定することに置き換えてもよく、S206は、i+1をiに割り当てることに置き換えてもよく、S207は、(i-1)番目の予めグループ化されたサブグループがサブグループであることを決定することに置き換えてもよい。
例えば、図6を参照して、サブグループ3を決定するプロセスにおいて、点群のj番目のフレームは具体的には点群6である。第2の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、3回目にウィンドウをスライドして第3の予めグループ化されたサブグループが得られる。第3の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、第2の予めグループ化されたサブグループ(すなわち、点群6~12を含むセット)がサブグループ3として用いられる。
別の例として、図6を参照して、各回にウィンドウをスライドさせるのに用いられるステップサイズが3であると仮定する。この場合、サブグループ1が点群の4つのフレームを含むセットであることから、サブグループ1を決定するプロセスにおいて、得られた第1の予めグループ化されたサブグループ(すなわち、点群1~4を含むセット)が所定の条件を満たし、得られた第2の予めグループ化されたサブグループ(すなわち、点群1~7を含むセット)は所定の条件を満たさないことが分かる。
実施形態1では、異なる回にウィンドウをスライドさせるのに用いられるステップサイズは等しくても等しくなくてもよい。
任意で、i1回目にウィンドウをスライドさせるのに用いられるステップサイズは、i2回目にウィンドウをスライドさせるのに用いられるステップサイズ以上であり、1≦i1<i2≦iであり、i1及びi2の双方は整数である。すなわち、本願のこの実施形態では、サブグループ決定プロセスにおいて後でウィンドウをスライドさせるために用いられるステップサイズは、先にウィンドウをスライドさせるのに用いられるステップサイズ以上である技術的解決策がサポートされる。詳細は以下のとおりである。
一部の実施では、各回にウィンドウをスライドさせるために用いられるステップサイズは同じである。すなわち、ウィンドウは固定のステップサイズでスライドされる。任意で、固定のステップサイズは1であり得る。この場合、符号化すべき点群グループが粒度として点群に基づいてグループ化される場合、グループ化の結果をより正確なものにできる。任意で、固定のステップサイズは代替的に1より大きい値であり得る。符号化すべき点群グループ、例えばGOF内の点群の複数の連続フレームの特徴類似性は比較的高いため、比較的大きなステップサイズは、グループ化プロセスにおける計算の複雑性を低減できる。
一部の他の実施では、ウィンドウを少なくとも2回スライドさせるために用いられるステップサイズは等しくなく、後でウィンドウをスライドさせるために用いられるステップサイズは、先にウィンドウをスライドさせるために用いられるステップサイズ以上である。すなわち、ウィンドウは非固定のステップサイズでスライドされる。このように、計算の複雑性と、グループ化プロセスにおけるグループ化の結果の精度とのバランスを支援するために適切なステップサイズが選択される。これは、全体的なグループ化パフォーマンスの改善に役立ち、エンコード性能の改善にさらに役立つ。任意で、(i+1)回目にウィンドウをスライドさせるのに用いられるステップサイズN[i+1]は式N[i+1]=N[i]×cにしたがって得られる。N[i]はi回目にウィンドウをスライドさせるのに用いられるステップサイズであり、cはi番目の予めグループ化されたサブグループ内の大型点群のフレームの数に基づいて決定される。すなわち、2回連続でウィンドウをスライドさせるプロセスにおいて、先にウィンドウをスライドさせるために用いられるステップサイズは、後でウィンドウをスライドさせるために用いられるステップサイズを決定するために用いられる。さらに、任意で、c=(a-b)/aであり、aは第1の所定の数であり、bはi番目の予めグループ化されたサブグループ内の大型点群のフレームの数である。まぎれもなく、これは、本願の本実施形態に限定されない。
特定の実施では、異なる回にウィンドウをスライドさせるために用いられるステップサイズが固定であっても、ステップサイズが固定でない場合にステップサイズを決定するための方法等が予め定義されていてもよいことが理解されよう。
符号化すべき点群グループがグループ化される複数のサブグループを得るために、S201~S207が複数回行われる。S201~S207は、符号化すべき点群グループ内のサブグループを決定するための一般的な方法と考えられ得る。実際の実施では、以下の特殊なケースが存在し得る。
ケース1:S201~S207の説明から、i番目の予めグループ化されたサブグループの特徴情報が条件を満たす場合、(i+1)回目にウィンドウをスライドさせる必要があることが分かる。しかしながら、この場合、符号化すべき点群グループ内に取り囲まれていない点群が残っていない場合があり得る。すなわち、i番目の予めグループ化されたサブグループに含まれる点群の最後のフレームは、符号化すべき点群グループ内の点群の最後のフレームである。この場合、i番目の予めグループ化されたサブグループは、符号化すべき点群グループのうちの最後のサブグループであると決定され得る。
例えば、図8Aを参照して、符号化すべき点群グループは点群1~32を含み、グループ化されたサブグループはサブグループ1~6であると仮定する。この場合、サブグループ7を決定するプロセスにおいて、第3の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、S201~S207の説明に基づいて第4の予めグループ化されたサブグループを取得する必要がある。この場合、符号化すべき点群グループ内には取り囲まれていない点群が残っていないため、第3の予めグループ化されたサブグループ(すなわち、点群23~32を含むセット)がサブグループ7として用いられ得る。
ケース2:(i+1)回目にウィンドウをスライドさせるプロセスにおいて、(i+1)回目にウィンドウをスライドさせるのに用いられるステップサイズは、符号化すべき点群グループ内で取り囲まれていない点群のフレームの数よりも大きい場合がある。この場合、i番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、符号化すべき点群グループ内で取り囲まれていない点群が、(i+1)番目の予めグループ化されたサブグループとして用いられ得る。
例えば、図8Bを参照して、符号化すべき点群グループは点群1~32を含み、グループ化されたサブグループはサブグループ1~6であると仮定する。この場合、サブグループ7を決定するプロセスにおいて、第3の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、S201~S207の説明に基づいて第4の予めグループ化されたサブグループを取得する必要がある。この場合、4回目にウィンドウをスライドするのに用いられるステップサイズ(すなわち、3)は、符号化すべき点群フループ内で取り囲まれていない点群(すなわち、点群31~32)のフレームの数(すなわち、2)より大きいため、点群21~33が第4の予めグループ化されたサブグループとして用いられ得る。
実施形態2
実施例形態2と実施形態1との違いは、i≧2の場合に、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、(i+1)番目の予めグループ化されたグループを再度得るためにより小さいステップサイズが用いられる点である。この実施形態は、(i+1)番目の予めグループ化されたサブグループが得られたときに用いられるステップサイズが1よりも大きいシナリオに適用される。本実施形態で提供される方法のフロー図は図9A及び図9Bに示され得る。具体的には、実施形態1におけるS207は下記のステップS207A~S207Cで置き換えられ得る。
S207A:第2のステップサイズを用いることにより(i+1)番目の予めグループ化されたサブグループを再取得する。第2のステップサイズは第1のステップサイズよりも小さく、第1のステップサイズは(i+1)番目の予めグループ化されたサブグループが得られるときに用いられるステップサイズである。
(i+1)番目の予めグループ化されたサブグループを再取得するプロセスは、i番目の予めグループ化されたサブグループ内の点群の最後のフレームに戻り(又はロールバックし)、最後のフレームを開始点として用いることにより第2のステップサイズをスライドさせるプロセスとして理解され得る。
S207B:第2のステップサイズを用いることにより再取得された(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、第3のステップサイズを用いることにより(i+1)番目の予めグループ化されたサブグループを再取得する。第3のステップサイズは第2のステップサイズよりも小さい。すなわち、各回に再取得されるi番目の予めグループ化されたサブグループのステップサイズは、先に再取得されたi番目の予めグループ化されたサブグループのステップサイズよりも小さい。同様に、(i+1)番目の予めグループ化されたサブグループを再取得した回数が所定の回数に達するか又は最新の再取得した(i+1)番目の予めグループ化されたサブグループのステップサイズが所定のステップサイズ(例えば、1)以下である場合に、最新の再取得した(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合に、i番目の予めグループ化されたサブグループがあると決定される。
例えば、図10を参照して、サブグループ3を決定するプロセスにおいて、第1の予めグループ化されたサブグループ(すなわち、点群9~15を含むセット)の特徴情報は所定の条件を満たし、第2の予めグループ化されたサブグループ(すなわち、点群9~21を含むセット)の特徴情報は所定の条件を満たさず、第1のステップサイズは6であると仮定する。この場合、点群9~pを含む予めグループ化されたサブグループの特徴情報は条件を満たし、15<p<21であり、pは整数である。したがって、第2のステップサイズ(例えば、3)を用いることにより第2の予めグループ化されたサブグループ(すなわち、点群9~18を含むセット)が再取得される。再取得された第2の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、点群9~qを含むサブグループの特徴情報は所定の条件を満たし得る(15<q<18であり、qは整数である)。したがって、第3のステップサイズ(例えば、1)を用いるすることにより、第2の予めグループ化されたサブグループ(すなわち、点群9~16を含むセット)が再取得される。この再取得された第2の予めグループ化サブグループの特徴情報は所定の条件を満たさず、第2の予めグループ化サブグループを再取得した回数が所定の回数に達するか又は最新の再取得された第2の予めグループ化されたサブグループのステップサイズが所定のステップサイズ以下であると仮定する。この場合、第1の予めグループ化されたサブグループ(すなわち、点群9~15を含むセット)がサブグループ3として用いられる。
なお、所定の回数で再取得された(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、以下のステップS207Cが行われ得る。
S207C:再取得された(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合に、再取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に得られた(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数以下である場合、再取得された(i+1)番目の予めグループ化されたサブグループがサブグループであると決定される。
例えば、図11Aを参照して、サブグループ3を決定するプロセスにおいて、再取得された第2の予めグループ化されたサブグループ(すなわち、点群9~18を含むセット)の特徴情報が所定の条件を満たすと仮定する。この場合、点群9~dを含むサブグループの特徴情報は所定の条件を満たし得る(18<d<21であり、dは整数である)。この場合、第2の所定の数は3であると仮定する。再取得された第2の予めグループ化サブグループに含まれる点群のフレームの数と、最初に得られた第2の予めグループ化サブグループに含まれる点群のフレームの数との差(すなわち、3)は第2の所定の数と等しいため、再取得された第2の予めグループ化されたサブグループ(すなわち、点群9~18を含むセット)がサブグループとして用いられる。
再取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に取得した(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数よりも大きい場合、第4のステップサイズを用いることにより、(i+2)番目の予めグループ化されたサブグループが得られ、第2のステップサイズと第4のステップサイズの合計は第1のステップサイズより小さい。(i+2)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、第5のステップサイズを用いることにより(i+3)番目の予めグループ化されたサブグループが得られ、第2のステップサイズ、第4のステップサイズ及び第5のステップサイズの合計は第1のステップサイズよりも小さい。すなわち、(i+k)番目の予めグループ化されたサブグループを得るために用いられるステップサイズ、(i+k-1)番目の予めグループ化されたサブグループを得るために用いられるステップサイズ、(i+k-2)番目の予めグループ化されたサブグループを得るために用いられるステップサイズ・・・(i+2)番目の予めグループ化されたサブグループを得るために用いられるステップサイズ及び(i+1)番目の予めグループ化されたサブグループを再取得するのに用いられるステップサイズの合計は、最初に(i+1)番目の予めグループ化されたサブグループを得るために用いられるステップサイズよりも小さい。同様に、得られた(i+k)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に得られた(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数以下であり、(i+k)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、(i+k)番目の予めグループ化されたサブグループがサブグループであると決定され、k≧2であり、kは整数である。
例えば、図11Bを参照して、サブグループ3を決定するプロセスにおいて、再取得した第2の予めグループ化されたサブグループ(すなわち、点群9~18を含むセット)の特徴情報が所定の条件を満たすと仮定する。この場合、点群9~dを含むサブグループの特徴情報は所定の条件を満たし得る(18<d<21であり、dは整数である)。この場合、第2の所定の数を1と仮定する。第3の予めグループ化されたサブグループに含まれる点群のフレーム数と、最初に得られた第2の予めグループ化されたサブグループに含まれる点群のフレーム数との差(すなわち、1)は第2の所定の数と等しいため、第3の予めグループ化されたサブグループ(すなわち、点群9~21を含むセット)がサブグループとして用いられる。
(i+k)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、(i+k)番目の予めグループ化されたサブグループが再取得されることが理解されよう。後続のステップについては、S207B及び/又はS207Cを参照されたい。
なお、矛盾が生じない場合には、実施形態1の関連内容の説明は実施形態2に適用され得ることが分かる。例えば、実施形態1のケース1及びケース2での処理方法は実施形態2に適用され得る。別の例として、実施形態1におけるステップサイズ決定方法は実施形態2に適用され得る。
本実施形態で提供されるサブグループ決定方法は、スライディングウィンドウのステップサイズが1より大きい場合に、符号化すべき点群グループ内の可能な限り多くの点群が所定の条件を満たすサブグループを形成できるようにするのに役立つ。1つのサブグループが点群の少なくとも2つのフレームを含む場合、点群内にマッチング関係を有するパッチのものであり、グローバルマッチングパッキングアルゴリズムを用いて得られる占有マップは、パッチが位置する点群の占有マップ内の位置に対応する。これは、符号化性能を改善できる。したがって、本実施形態で提供される解決策によれば、サブグループ内の点群がグローバルマッチングパッキングアルゴリズムを用いてパッキングされる場合に、可能な限り多くの点群が所定の条件を満たすサブグループを形成することで符号化効率を改善させる。
以下では、読者の理解を容易にするために、二分法を用いて予めグループ化するプロセスにおけるいくつかの用語について簡単に説明する。
サブグループ分割点とは、2つの隣接するサブグループの分割点を意味する。符号化すべき点群グループをグループ化することの本質は、符号化すべき点群内のサブグループ分割点を探すことであることが理解されよう。
二分法の中間点は、二分法の対象とされるシーケンス内の複数のオブジェクトのうちの中間オブジェクトである。例えば、シーケンスに含まれるオブジェクトの数はそれぞれx~yであり、1≦x<yであり、x及びyの双方は整数である。この場合、二分法の中間点は、オブジェクト
又はオブジェクト
である。
は切り下げ、
は切り上げを表す。現在の二分法の対象のオブジェクト内の中間点よりも前のオブジェクトは、現行の二分法を用いて得られたオブジェクトの前半と呼ばれ、現在の二分法の対象のオブジェクト内の中間点よりも後のオブジェクトは、現行の二分法を用いて得られたオブジェクトの広範と呼ばれる。
点群のj番目のフレームを開始点として用いることにより、符号化すべき点群グループにグループ化されていない点群に対してi回目に二分法を行うことによりi番目の予めグループ化されたサブグループが取得される。例えば、二分法を用いることにより得られた点群の前半は、i回目の予めグループ化されたサブグループとして用いられ得る。これは、本願の本実施形態における説明のための例として用いられる。もちろん、これは本願の本実施形態に限定されない。点群のj番目のフレームは、符号化すべき点群グループにグループ化されていない点群内の点群の最初のフレームである。
i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、(i+1)番目の予めグループ化されたサブグループは、i番目の予めグループ化されたサブグループと、(i+1)回目に二分法を行うことにより得られた点群の前半とを含むセットである。
i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、(i+1)番目の予めグループ化されたサブグループは、i番目の予めグループ化されたサブグループ内の点群の前半を含むセットである。
図12(a)及び図12(b)は、本願の実施形態に係る二分群と予めグループ化されたサブグループとの間の関係の概略図である。符号化すべき点群グループが点群1~32を含む例を用いて図12(a)及び図12(b)を説明する。具体的には、点群1~32に対して二分法を行って第1の予めグループ化されたサブグループ(すなわち、点群1~16を含むセット)を得る。第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、図12(a)に示すように、点群16~32に対して二分法を行って第2の予めグループ化されたサブグループ(すなわち、点群1~24を含むセット)を得る。第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、図12(b)に示すように、点群1~16に対して二分法を行って第2の予めグループ化されたサブグループ(すなわち、点群1~7を含むセット)を得る。
以下では、特定の例を用いて、本願の本実施形態で提供される、二分法を用いることにより予めグループ化することが実施される場合の符号化すべき点群グループ内のサブグループを決定するための方法を説明する。詳細については、以下の実施形態3又は実施形態4を参照されたい。
実施形態3
図13は、本願の一実施形態に係るサブグループ決定方法の概略フロー図である。図13に示す方法は以下のステップを含む。
S301:j番目のフレームを開始点として用いることにより1回目に二分法を行って第1の予めグループ化されたサブグループを取得する。1≦j≦Jであり、Jは符号化すべき点群グループに含まれる点群のフレームの数である。
S302:第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たすかどうか判定する。
Yesの場合、特定すべき分割点は現在の二分法を用いることにより得られた点群の後半にあることを示し、S303が行われる。
Noの場合は、特定すべき分割点は現在の二分法を用いることにより得られた点群の前半にあることを示し、S304が行われる。
S303:2回目の二分法を行って第2の予めグループ化されたサブグループを取得する。第2の予めグループ化されたサブグループが所定の条件を満たす場合、3回目の2分法が行われる。すなわち、現在の二分法を用いることにより得られた予めグループ化されたサブグループが所定の条件を満たす場合、次回の二分法が行われる。この規則に従って二分法が行われ、その後の実施は以下のようになり得る。
実施1:直近に行われた二分法により得られた予めグループ化されたサブグループが二分法を続けることができなくなるまで所定の条件を満たす場合、グループ化されていない符号化すべき点群がサブグループとして用いられる。
実施2:(i+1)回目に二分法を行うことにより得られた(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、i回目に二分法を行うことにより得られたi番目の予めグループ化サブグループがサブグループとして用いられ、i≧1であり、iは整数である。
S304:2回目の二分法を行って第2の予めグループ化されたサブグループを取得する。第2の予めグループ化されたサブグループが所定の条件を満たさない場合、3回目の二分法が行われる。すなわち、現在の二分法を用いることにより得られた予めグループ化されたサブグループが所定の条件を満たさない場合、次回の二分法が行われる。この規則に従って二分法が行われ、その後の実施は以下のようになり得る。
実施1:直近に行われた二分法により得られた予めグループ化されたサブグループが二分法を続けることができなくなるまで所定の条件を依然として満たさない場合、グループ化されていない符号化すべき点群の第1のフレームがサブグループとして用いられる。
実施2:直近に行われた二分法により得られた予めグループ化されたサブグループが二分法を続けることができなくなるまで所定の条件を満たす場合、直近で得られた予めグループ化されたサブグループがサブグループとして用いられる。
実施3:(i+1)回目の二分法を行って得られた(i+1)番目の予めグループ化サブグループの特徴情報が所定の条件を満たす場合、(i+2)回目の二分法が行われ、(i+2)回目の二分法を行って得られた(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、(i+3)回目の二分法が行われる。即ち、所定の条件を今回満たした場合、次回の二分法が行われる。この規則に従って二分法が行われる。直近に行われた二分法により得られた予めグループ化されたサブグループが二分法を続けることができなくなるまで所定の条件を依然として満たす場合、直近で得られた予めグループ化されたサブグループがサブグループとして用いられる。所定の回に二分法を行うことにより得られた予めグループ化されたサブグループが所定の条件を満たさない場合、前回二分法を行うことにより得られた予めグループ化されたサブグループがサブグループとして用いられる。
本実施形態で提供されるサブグループ決定方法は、符号化すべき点群内の可能な限り多くの点群が所定の条件を満たすサブグループを形成できるようにするのに役立つ。このように、サブグループ内の点群がグローバルマッチングパッキングアルゴリズムを用いることによりパッキングされると、符号化効率が改善される。
実施形態4
図14は、本願の一実施形態に係るサブグループ決定方法の概略フロー図である。図14に示す方法は下記のステップを含む。
S401:j番目のフレームを開始点として用いることにより1回目の二分法を行って第1の予めグループ化されたサブグループを取得し、1≦j≦Jであり、Jは符号化すべき点群グループに含まれる点群のフレームの数である。
S402:第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たすかどうか判定する。
Yesの場合はS403が行われる。Noの場合はS404が行われる。
S403:第1の予めグループ化されたサブグループをサブグループとして用いる。
S404:2回目の二分法を行って第2の予めグループ化されたサブグループを取得する。第2の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、3回目の二分法を行って第3の予めグループ化されたサブグループを取得する。すなわち、現在の二分法を用いることにより得られた予めグループ化されたサブグループが所定の条件を満たさない場合、次回の二分法が行われ、この規則に従って二分法が行われ、その後の実施は以下のようになり得る。
実施1:直近に行われた二分法により得られた予めグループ化されたサブグループが二分法を続けることができなくなるまで所定の条件を依然として満たさない場合、グループ化されていない符号化すべき点群の点群の第1のフレームがサブグループとして用いられる。
実施2:(i+1)回目に二分法を行うことにより得られた(i+1)番目の予めグループ化されたサブグループが所定の条件を満たす場合、(i+1)番目の予めグループ化サブグループがサブグループとして用いられる。i≧1であり、iは整数である。
本実施形態で提供されるサブグループ決定方法によれば、複数回二分法を行うことにより得られた複数の予めグループ化されたサブグループうちの所定の条件を満たす第1の予めグループ化されたサブグループが、サブグループとして用いられる。ウィンドウスライディング法を用いることにとよる予めグループ化する方法とは異なって、二分法を用いることにより予めグループ化することを通じて得られた予めグループ化されたサブグループが所定の条件を満たす場合、予めグループ化されたサブグループは既に比較的大量の点群を含んでいると考えられる。したがって、グローバルマッチングパッキングアルゴリズムを用いることによりサブグループ内の点群がパッキングされると、符号化効率が改善される。
なお、実施形態3及び実施形態4に記載の「二分法を続けることができない」とは、二分法の対象なるオブジェクト(具体的には点群)の数が1の場合、二分法を行うことができないか又は二分法を行った回数が所定の閾値に達した場合、二分法を続けることができないことを含み得る。二分法の対象なるオブジェクトの数が1の場合、二分法を行うことができないことは、二分法の対象なるオブジェクト(具体的には点群)の数が所定の閾値以下の場合、二分法を行うことができないことまで拡大され得る。
なお、実施形態1~実施形態4で説明したいずれかの予めグループ化されたサブグループが所定の条件を満たすかどうかについては以下の説明を参照されたい。i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合に、i番目の予めグループ化されたサブグループが複数のサブグループの1つであると決定される例は以下の説明のために用いられる。加えて、予めグループ化されたサブグループが所定の条件を満たすかどうかの以下の説明に関与する「予めグループ化されたサブグループ」は、例えば、ウインドウスライディング法又は二分法を用いることによって得ることが理解されよう。
任意で、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合に、i番目の予めグループ化されたサブグループが複数のサブグループの1つであると決定されることは、以下の方法のうちの少なくとも1つで実施され得る。
方法1:i番目の予めグループ化されたサブグループの特徴情報がi番目の予めグループ化されたサブグループのグローバル占有マップのサイズを含み、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズが第1の閾値以下であり、(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズが第1の閾値よりも大きい場合、i番目の予めグループ化されたサブグループはサブグループであると決定される。
グローバル占有マップは、1つ以上のユニオンパッチ占有マップをパッキングすることによって得られると考えられ、ユニオンパッチ占有マップは、予めグループ化されたサブグループ内のグローバルマッチパッチのグループの集合である。したがて、予めグループ化されたサブグループ内の点群のフレームの数が増加するにつれて、グローバルマッチパッチのグループ内のパッチの数が増加し、グローバルマッチパッチのグループに対応するユニオンパッチ占有マップの面積が増加する。その結果、グローバル占有マップのサイズが増加する。したがって、このアプローチが提案される。このアプローチに基づいて、サブグループのグローバル占有マップは第1の閾値内で制限される。これは、サブグループ内の点群の占有マップのサイズを間接的に反映し、それにより符号化効率の改善に役立ちうる。
グローバル占有マップのサイズを表すために異なるパラメータが用いられ得る場合、第1の閾値の意味が異なることが理解されよう。例えば、グローバル占有マップのサイズがグローバル占有マップの高さ及び幅の積を用いることによって表される場合、第1の閾値は、サブグループのグローバル占有マップの面積の最大許容値を表す。別の例として、グローバル占有マップのサイズがグローバル占有マップの高さを用いて表される場合、第1の閾値は、サブグループのグローバル占有マップの高さの最大許容値を表す。
1つの実施では、第1の閾値は所定の値、例えば経験値である。例えば、第1の閾値がサブグループのグローバル占有率マップの高さの最大許容値を表す場合、第1の閾値は1280ピクセルであり得る。
別の実施では、第1の閾値は候補パッキングアルゴリズムに基づいて得られた、符号化すべき点群グループ内の点群(例えば、各点群)の占有マップの最大サイズに基づいて決定される。候補パッキングアルゴリズムは、グローバルマッチングパッキングアルゴリズムとは別のパッキングアルゴリズム、例えばアンカーパッキングアルゴリズムであり得る。例えば、第1の閾値はH×w1である。Hは、アンカーパッキングアルゴリズム等の候補アルゴリズムに基づいて得られる、符号化すべき点群グループ内の点群の占有マップの高さの最大値であり、w1は定数である。w1は、ビデオ符号化効率に対するグローバルマッチングパッキングアルゴリズム及び候補パッキングアルゴリズムの影響に基づいて決定され得る。任意で、w1∈(0.5、1.5)である。もちろん、これに限定されるものではない。
方法2:i番目の予めグループ化されたサブグループの特徴情報がi番目の予めグループ化されたサブグループ内の点群の占有マップのサイズを含む場合、以下の方法2-1又方法2-2が行われる。
方法2-1:i番目の予めグループ化されたサブグループ内の大型点群のフレームの数が第1の所定の数以下であり、(i+1)番目の予めグループ化されたサブグループ内の大型点群のフレームの数が第1の所定の数よりも多い場合、i番目の予めグループ化サブグループはサブグループであると決定され、大型点群は占有マップサイズが第2の閾値以上の点群である。本明細書では、占有マップは、任意のパッキングアルゴリズムに基づいて点群をパッキングすることによって得られる点群のフレームの占有マップであり得る。
第1の所定の数は所定の値、例えば所定の経験値、例えば4であり得る。第1の所定の数が1の場合、方法2-1は以下のように置き換えられ得る。i番目の予めグループ化されたサブグループが大型点群を含まず、(i+1)番目の予めグループ化されたサブグループが大型点群を含む場合、i番目の予めグループ化されたサブグループがサブグループであると決定される。
点群の占有マップのサイズを表すために異なるパラメータが用いられ得る場合、第2の閾値の意味が異なることが理解されよう。例えば、点群の占有マップのサイズが点群の占有マップの高さ及び幅の積を用いることによって表される場合、第2の閾値は、サブグループ内の点群の占有マップの面積の最大許容値を表す。別の例として、点群の占有マップのサイズが点群の占有マップの高さを用いて表される場合、第2の閾値は、サブグループ内の点群の占有マップの高さの最大許容値を表す。
一実施では、第2の閾値は所定の値、例えば所定の経験値である。例えば、点群の占有マップのサイズが点群の占有マップの高さ及び幅の積を用いることによって表される場合、第2の閾値は1280ピクセルであり得る。
別の実施では、大型点群は具体的にはグローバルマッチングパッキングアルゴリズムに基づいて得られた占有マップサイズが第2の閾値以上の点群である。
この場合、任意で、第2の閾値は、候補パッキングアルゴリズムに基づいて得られた、符号化すべき点群グループ内の点群の占有マップの最大サイズに基づいて決定され得る。候補パッキングアルゴリズムは、グローバルマッチングパッキングアルゴリズム以外の別のパッキングアルゴリズム、例えばアンカーパッキングアルゴリズムである。例えば、NHi,u≧Hmax×w2の場合、i番目の予めグループ化されたサブグループ内の点群のu番目のフレームは大型点群であると考えられ、u≧1であり、uは整数である。大型の点群であると考えられる。Hi,uは、グローバルマッピングアルゴリズムに基づいて得られた、i番目の予めグループ化されたサブグループ内の点群のu番目のフレームの占有マップの高さであり、Hmaxは、アンカーパッキングアルゴリズム等の候補パッキングアルゴリズムに基づいて得られた、符号化すべき点群グループ内の点群の占有マップの高さの最大値であり、w2は定数である。任意で、w2∈(0.5、1.5)である。もちろん、これに限定されるものではない。点群のフレームの占有マップのサイズは、点群のフレームが位置するサブグループのグローバル占有マップのサイズ以上であるため、さらに任意でw1<w2である。例えば、w1はw2よりもわずかに小さい。
任意で、第2の閾値は、候補パッキングアルゴリズムに基づいて得られた、現在の点群の占有マップのサイズに基づいて決定され得る。候補パッキングアルゴリズムは、グローバルマッチングパッキングアルゴリズム以外の別のパッキングアルゴリズム、例えばアンカーパッキングアルゴリズムである。例えば、NHi,u≧Hi,u×w3である。Hi,uは占有マップのグローバルマッピングアルゴリズムに基づいて得られた、i番目の予めグループ化されたサブグループ内の点群のu番目のフレームの占有マップの高さであり、Hi,uは、アンカーパッキングアルゴリズム等の候補パッキングアルゴリズムに基づいて得られたi番目の予めグループ化されたサブグループ内の点群のu番目のフレームの占有マップの高さであり、w3は定数である。任意で、w3∈(0.5、3.0)である。さらに任意でw3はw2よりも大きい。
方法2-2:候補パッキングアルゴリズムに基づいて得られる、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が第3の閾値以下であり、候補パッキングアルゴリズムに基づいて得られる、(i+1)番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、(i+1)番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が第3の閾値よりも大きい場合に、i番目の予めグループ化されたサブグループがサブグループであると決定する。
候補パッキングアルゴリズムは、グローバルマッチングパッキングアルゴリズム以外の別のパッキングアルゴリズム、例えばアンカーパッキングアルゴリズムであり得る。例えば、sum(NHi,u/Hi,u)/frameCnti≦第3の閾値であり、sum(NHi+1,v/Hi+1,v)/frameCnti+1>第3の閾値である。sum()は合計演算を示す。NHi,uは、グローバルマッチングパッキングアルゴリズムに基づいて得られた、i番目の予めグループ化されたサブグループ内の点群のu番目のフレームの占有マップの高さであり、Hi,uは、グローバルマッチングパッキングアルゴリズムに基づいて得られた、i番目の予めグループ化されたサブグループ内の点群のu番目のフレームの占有マップの高さであり、frameCntiはi番目の予めグループ化されたサブグループに含まれる点群のフレームの数であり、u≧1であり、uは整数である。NHi+1,vは、グローバルマッチングパッキングアルゴリズムに基づいて得られた、(i+1)番目の予めグループ化されたサブグループ内の点群のv番目のフレームの占有マップの高さであり、Hi+1,vは、グローバルマッチングパッキングアルゴリズムに基づいて得られた、(i+1)番目の予めグループ化されたサブグループ内の点群のv番目のフレームの占有マップの高さであり、frameCnti+1は(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数であり、v≧1であり、vは整数である。
任意で、第3の閾値は所定の値である。任意で、第3の閾値は1より大きい値、例えば1.2である。
加えて、任意で、i番目の予めグループ化されたサブグループの特徴情報に基づいてi番目の予めグループ化されたサブグループがサブグループであると決定することは、以下の方法A又は方法Bを含み得る。
方法A:(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズが、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズと比べて第5の閾値以上に減少した場合、それと比較して、i番目の予めグループ化されたサブグループがサブグループとして用いられることを示し、(i+1)番目の予めグループ化されたサブグループがサブグループとして用いられる場合に、グローバルマッチングパッキングアルゴリズムを用いることによりパッキングが行われた場合、点群符号化効率が大幅に低下する。この場合、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定される。
i番目の予めグループ化されたサブグループ内のグローバルマッチパッチが依然として(i+1)番目のサブグループ内のグローバルマッチパッチである場合、(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズは、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズ以上であることが理解されよう。しかしながら、i番目の予めグループ化されたサブグループ内のグローバルマッチパッチのグループは(i+1)番目の予めグループ化されたサブグループ内のグローバルマッチパッチではない場合がある。この場合、それによって、(i+1)の予めグループ化されたサブグループのグローバル占有マップのサイズが、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズよりも小さくなることがある。この理由を考慮して本方法が提案される。
方法B:i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのユニオンパッチ占有マップの面積を含む。これに対応して、(i+1)番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積が、i番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積と比べて第4の閾値以上に減少した場合、それと比較して、i番目の予めグループ化されたサブグループがサブグループとして用いられることを示し、(i+1)番目の予めグループ化されたサブグループがサブグループとして用いられる場合に、グローバルマッチングパッキングアルゴリズムを用いることによりパッキングが行われた場合、点群符号化効率が大幅に低下する。この場合、i番目の予めグループ化されたサブグループがサブグループであると決定される。この方法の関連説明については、方法Aの関連説明を参照されたい。ここでは、詳細については繰り返し説明しない。
上記では、方法の観点から本願の実施形態で提供される解決策を主に記載している。上記の機能を実施するために、係る機能を行うための対応するハードウェア構造及び/又はソフトウェアモジュールが含まれる。当業者であれば、本明細書で開示の実施形態で説明した例のユニット及びアルゴリズムステップと組み合わせて、本願はハードウェア又はハードウェアとコンピュータソフトウェアとの組み合わせによって実施され得ることを容易に気付き得る。機能がハードウェアによって又はコンピュータソフトウェアによって駆動されるハードウェアによって行われるかは、技術的解決策の特定の用途及び設計上の制約に依存する。当業者であれば、特定の用途ごとに、記載された機能を実現するために異なる方法を用いり得るが、その実施は本願の範囲を超えるものであると考えるべきではない。
本願の実施形態では、上記の方法の例に基づいてエンコーダが機能モジュールにグループ化され得る。例えば、各機能モジュールは、対応する機能に基づく分割を通じて得られてもよいし、2つ以上の機能を1つの処理モジュールに統合してもよい。統合モジュールはハードウェアの形態で実施されてもよいし、ソフトウェア機能モジュールの形態で実施されてもよい。なお、本願の実施形態では、モジュール分割は一例であり、単なる論理的な機能分割である。実際の実施では他の分割方法があり得る。
図15は、本願の一実施形態に係るエンコーダ150の概略ブロック図である。エンコーダ150はグループ化モジュール1501及び符号化モジュール1502を含む。
1つの例では、グループ化モジュール1501は図2のパッキングモジュール102に対応し得る。例えば、パッキングプロセスは、符号化すべき点群グループをグループ化するプロセスを含み得る。例えば、符号化すべき点群グループをグループ化するプロセスにおいて、複数のサブグループに含まれる点群の占有マップが生成される。それに対応して、符号化モジュール1502は、図2の1つ以上のモジュールの組み合わせに対応し得る。例えば、符号化モジュール1502は、点群の占有マップを受信する図2のモジュール(例えば、深度マップ生成モジュール103、テクスチャマップ生成モジュール104及び第2の充填モジュール111)と、それらのモジュールに接続されるか又は通信するモジュールとに対応し得る。
別の例では、グループ化モジュール1501は、図2のパッキングモジュール102内のグループ化サブモジュールに対応し得る。例えば、グループ化プロセスとパッキングプロセスとは互いに比較的独立している。それに対応して、符号化モジュール1502は、図2の1つ以上のモジュールの組み合わせに対応し得る。例えば、符号化モジュール1502は、図2のパッキングモジュール102内のパッキングサブモジュール、サブグループに含まれる点群の占有マップを受信するモジュール(例えば、深度マップ生成モジュール103、テクスチャマップ生成モジュール104及び第2の充填モジュール111)及びそれらのモジュールに接続されるか又は通信するモジュールに対応し得る。
具体的な符号化機能については、従来技術又は図2に示すエンコーダの原理の上述の説明を参照されたい。ここでは、詳細については説明を繰り返さない。
実現可能な実施では、グループ化モジュール1501は、符号化すべき点群グループを複数のサブグループにグループ化するように構成され、符号化すべき点群グループを複数のサブグループにグループ化することは、符号化すべき点群グループ内の点群の複数のフレームを予めグループ化して予めグループ化されたサブグループを取得することと、予めグループ化されたサブグループの特徴情報に基づいて、予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定することと、を含み、特徴情報は、予めグループ化されたサブグループ内の点群の占有マップのサイズを表すのに用いられる。符号化モジュール1502は、複数のサブグループに含まれる点群を符号化するように構成されている。例えば、図5を参照して、グループ化モジュール1501はS101を行うように構成してもよく、符号化モジュール1502はS102を行うように構成してもよい。
実現可能な実施では、符号化すべき点群グループ内の点群の複数のフレームを予めグループ化して予めグループ化されたサブグループを取得する態様において、グループ化モジュール1501は、点群のj番目のフレームを開始点として用いることにより、符号化すべき点群グループにグループ化されていない点群をi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得するように具体的に構成され、点群のj番目のフレームは、グループ化されていない点群内の点群の第1のフレームであり、i≧1であり、iは整数であり、j≧1であり、jは整数であり、i番目の予めグループ化されたサブグループは、点群のj番目のフレームから始まる点群の1つ以上のフレームを含む。
それに対応して、予めグループ化されたサブグループの特徴情報に基づいて、予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定する態様において、グループ化モジュール1501は、i番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定するよう具体的に構成されている。
実現可能な実施では、i番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定する態様において、グループ化モジュール1501は、i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定するよう具体的に構成されている。
実現可能な実施では、i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定する態様において、グループ化モジュール1501は、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が該所定の条件を満たさない場合に、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定するよう具体的に構成されている。例えば、図7を参照して、グループ化モジュール1501はS207を行うように構成され得る。別の例として、図13を参照して、グループ化モジュール1501は、S303及びS304のいくつかのステップを行うように構成され得る。
実現可能な実施では、第1の閾値は所定の値である。あるいは、第1の閾値は、候補パッキングアルゴリズムに基づいて得られる、符号化すべき点群グループ内の点群の占有マップの最大サイズに基づいて決定される。
実現可能な実施では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズを含む。それ対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合に、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定する態様において、グループ化モジュール1501は、i番目の予めグループ化されたサブグループ内の大型点群のフレームの数が第1の所定の数以下であり、(i+1)番目の予めグループ化されたサブグループ内の大型点群のフレームの数が該第1の所定の数よりも大きい場合、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定することであって、大型点群は、占有マップのサイズが第2の閾値以上の点群である、こと又は候補パッキングアルゴリズムに基づいて得られる、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が第3の閾値以下であり、候補パッキングアルゴリズムに基づいて得られる、(i+1)番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、(i+1)番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が第3の閾値よりも大きい場合に、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定すること、を行うよう具体的に構成されている。
実現可能な実施では、第2の閾値は所定の値である。あるいは、大型点群は、グローバルマッチングパッキングアルゴリズムに基づいて得られた占有マップのサイズが第2の閾値以上である点群であり、第2の閾値は、候補パッキングアルゴリズムに基づいて得られる、符号化すべき点群グループ内の点群の占有マップの最大サイズに基づいて決定されるか又は候補パッキングアルゴリズムに基づいて得られる、現在の点群の占有マップのサイズに基づいて決定される。
実現可能な実施では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズを含む。それ対応して、i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定する態様において、グループ化モジュール1501は、i番目の予めグループ化されたサブグループ内のグローバル占有マップのサイズが第1の閾値以下であり、(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズが第1の閾値よりも大きい場合、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定すること、又は(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズがi番目の予めグループ化されたサブグループのグローバル占有マップのサイズと比べて第5の閾値以上減少した場合に、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定すること行うように具体的に構成されている。
実現可能な実施では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのユニオン点群ブロックパッチ占有マップの面積を含む。i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループが複数のサブグループの1つであると決定する態様において、グループ化モジュール1501は、(i+1)番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積がi番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積と比べて第4の閾値以上減少した場合に、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定すること行うように具体的に構成されている。
実現可能な実施では、符号化すべき点群グループにグループ化されていない点群を、点群のj番目のフレームを開始点として用いることによりi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得する態様において、グループ化モジュール1501は、点群のj番目のフレームを開始点として用いることにより、符号化すべき点群グループにグループ化されていない点群に対してウィンドウをi回目にスライドさせてi番目の予めグループ化されたサブグループを取得すること又は点群のj番目のフレームを開始点として用いることにより、符号化すべき点群グループにグループ化されていない点群に対して二分法をi回目に行うことによりi番目の予めグループ化されたサブグループを取得することを行うよう具体的に構成されている。
実現可能な実施では、i1回目にウィンドウをスライドさせるのに用いられるステップサイズは、i2回目にウィンドウをスライドさせるのに用いられるステップサイズ以上であり、1≦i1<i2≦iであり、i1及びi2の双方は整数である。
実現可能な実施では、グループ化モジュール1501は、式N[i+1]=N[i]×cにしたがって、(i+1)回目にウィンドウをスライドさせるのに用いられるステップサイズN[i+1]を得るようさらに構成され、N[i]はi回目にウィンドウをスライドさせるのに用いられるステップサイズであり、cは、i番目の予めグループ化されたサブグループ内の大型点群のフレームの数に基づいて決定され、該大型点群は、占有マップのサイズが第2の閾値以上の点群である。
実現可能な実施では、cは式c=(a-b)/aを満たし、aは第1の所定の数であり、bはi番目の予めグループ化されたサブグループ内の大型点群のフレームの数である。
実現可能な実施では、符号化すべき点群グループにグループ化されていない点群を、点群のj番目のフレームを開始点として用いることによりi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得する態様において、グループ化モジュール1501は、点群のj番目のフレームを開始点として用いることにより、符号化すべき点群グループにグループ化されていない点群に対してi回目にウィンドウをスライドさせてi番目の予めグループ化されたサブグループを取得するように具体的に構成されている。それに対応して、i番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定する態様において、グループ化モジュール1501は、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が該所定の条件を満たさない場合に、第2のステップサイズを用いることにより(i+1)番目の予めグループ化されたサブグループを再取得することであって、該第2のステップサイズは第1のステップサイズよりも小さく、該第1のステップサイズは(i+1)番目の予めグループ化されたサブグループが最初に得られるときに用いられるステップサイズである、ことと、再度取得された(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合に、第3のステップサイズを用いることにより(i+1)番目の予めグループ化されたサブグループを再取得し、該第3のステップサイズは第2のステップサイズよりも小さく、同様に、(i+1)番目の予めグループ化されたサブグループを再取得した回数が所定の回数に達するか又は最新の再取得した(i+1)番目の予めグループ化されたサブグループのステップサイズが所定のステップサイズ以下である場合に、最新の再取得した(i+1)番目の予めグループ化されたサブグループの特徴情報が前記所定の条件を満たさない場合に、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定することを行うよう具体的に構成されている。例えば、図9A及び図9Bを参照して、グループ化モジュール1501は、S207A及びS207Bを行うように構成され得る。
実現可能な実施では、符号化すべき点群を複数のサブグループにグループ化する態様において、グループ化モジュール1501は、再取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数以下である場合に、この時に再取得された(i+1)番目の予めグループ化されたサブグループがサブグループであると決定すること又は再取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数よりも大きい場合に、第4のステップサイズを用いることにより(i+2)番目の予めグループ化されたサブグループを取得することであって、第2のステップサイズと第4のステップサイズとの合計は第1のステップサイズよりも小さい、ことと、(i+2)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合に、第5のステップサイズを用いることにより(i+3)番目の予めグループ化されたサブグループを取得することであって、第2のステップサイズ、第4のステップサイズ及び該第5のステップサイズの合計は第1のステップサイズよりも小さい、ことと、同様に、取得された(i+k)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数以下の場合に、(i+k)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、(i+k)番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定することであって、k≧2であり、kは整数である、ことと、を行うよう具体的に構成されている。例えば、図9A及び図9Bを参照して、グループ化モジュール1501はS207Cを行うように構成され得る。
実現可能な実施では、符号化すべき点群グループにグループ化されていない点群を、点群のj番目のフレームを開始点として用いることによりi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得する態様において、グループ化モジュール1501は、点群のj番目のフレームを開始点として用いることにより、符号化すべき点群グループにグループ化されていない点群に対してi回目に二分法を行うことによりi番目の予めグループ化されたサブグループを取得するよう具体的に構成されている。それに対応して、i番目の予めグループ化されたサブグループの特徴情報に基づいて、予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定する態様において、グループ化モジュール1501は、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合に、i番目の予めグループ化されたサブグループは複数のサブグループのうちの1つであると決定するよう具体的に構成されている。例えば、図14を参照して、グループ化モジュール1501は、S403及びS404のいくつかのステップを行うように構成され得る。
実現可能な実施では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズを含む。それに対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすことは、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズが第1の閾値以下であること及び/又は(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズが、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズと比べて、第5の閾値以上に減少することを含む。
実現可能な実装では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズを含む。これに対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすことは、i番目の予めグループ化されたサブグループ内の大型点群のフレームの数が第1の所定の数以下であり、大型点群は、占有マップサイズが第2の閾値以上の点群である、こと又は候補パッキングアルゴリズムに基づいて得られる、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が第3の閾値以下であることを含む。第2の閾値の実施については、前述の説明を参照されたい。
実現可能な実施では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのユニオンパッチ占有マップの面積を含む。これに対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすことは、(i+1)番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積が、i番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積と比べて第4の閾値以上減少することを含む。
矛盾が生じない場合には、新たな技術的解決策を構成するために、上述の任意の複数の実現可能な実施における一部の又は全ての特徴情報を組み合わせて用いられ得ることが理解されよう。例えば、i番目の予めグループ化されたサブグループが所定の条件を満たすかどうかを判定する方法については、前述の対応する実現可能な実施を参照されたい。
本願の本実施形態におけるエンコーダ内のモジュールは、本願の対応する点群符号化方法に含まれる様々な実行ステップを実装する機能的エンティティ、すなわち、本願の対応する点群符号化方法における全てのステップ及びそれらのステップの拡張及び変形例を実施する機能的エンティティであるであることが理解されよう。簡略化のために、本明細書では詳細については説明を繰り返さない。
図16は、本願の一実施形態に係る符号化装置160の実施の概略ブロック図である。符号化装置160は、プロセッサ1610、メモリ1630及びバスシステム1650を含み得る。プロセッサ1610は、バスシステム1650を介してメモリ1630に接続されている。メモリ1630は命令を記憶するように構成されている。プロセッサ1610は、メモリ1630に記憶された命令を実行して、本願に記載の様々な点群符号化方法を行うように構成されている。繰り返しを避けるために、ここでは詳細について繰り返し説明しない。
本願の本実施形態では、プロセッサ1610は中央処理装置(central processing unit、CPU)であってもいいし、プロセッサ1610は別の汎用プロセッサ、DSP、ASIC、FPGA又は別のプログラマブル論理デバイス、個別ゲート又はトランジスタ論理デバイス、個別ハードウェアコンポーネント等であってもよい。汎用プロセッサはマイクロプロセッサであってもいいし、プロセッサは任意の従来のプロセッサ等であってもよい。
メモリ1630はROM装置又はRAM装置を含み得る。あるいは、任意の他の適切な種類の記憶装置がメモリ1630として用いられ得る。メモリ1630は、バスシステム1650を介してプロセッサ1610によりアクセスされるコード及びデータ1631を含み得る。メモリ1630は、オペレーティングシステム1633及びアプリケーション1635をさらに含み得る。アプリケーション1635は、本願に記載の点群符号化をプロセッサ1610が行うことができるようにする少なくとも1つのプログラムを含む。例えば、アプリケーション1635はアプリケーション1~Nを含んでもよく、本願に記載の点群符号化方法を行う点群符号化アプリケーションをさらに含んでもよい。
バスシステム1650は、データバスに加えて、電力バス、制御バス、ステータス信号バス等をさらに含み得る。しかしながら、明確に説明するために、図中の様々な種類のバスはバスシステム1650として記されている。
任意で、符号化装置160は1つ以上の出力装置、例えばディスプレイ1670をさらに含み得る。1つの例では、ディスプレイ1670は、ディスプレイと、タッチ入力を感知するように動作可能なタッチセンシティブユニットとを組み合わせたタッチセンシティブディスプレイであり得る。ディスプレイ1670は、バス1650を介してプロセッサ1610に接続され得る。
当業者であれば、本明細書で開示及び説明した様々な例示的な論理ブロック、モジュール及びアルゴリズムステップを参照して説明した機能は、ハードウェア、ソフトウェア、ファームウェア又はそれらの任意の組み合わせによって実施できることが分かる。実施形態がソフトウェアにより実施される場合、例示の論理ブロック、モジュール及びステップを参照して説明した機能は、1つ以上の命令又はコードとしてコンピュータ読み取り可能媒体に記憶されるか又はそれを介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ読み取り可能媒体は、データ記憶媒体等の有形媒体又は(例えば、通信プロトコルに従って)ある場所から他の場所へのコンピュータプログラムの転送を促進する任意の媒体を含む通信媒体に対応するコンピュータ読み取り可能記憶媒体を含み得る。このように、コンピュータ読み取り可能媒体は、(1)非一時的な有形のコンピュータ読み取り可能記憶媒体又は(2)信号又はキャリア等の通信媒体に概して対応し得る。データ記憶媒体は、本願に記載の技術を実施するための命令、コード及び/又はデータ構造を取り出すために、1つ以上のコンピュータ又は1つ以上のプロセッサによってアクセス可能な任意の使用可能な媒体であり得る。コンピュータプログラム製品は、コンピュータ読み取り可能媒体を含み得る。
1つの例では、限定されないが、そのようなコンピュータ読み取り可能記憶媒体はRAM、ROM、EEPROM、CD-ROM又は他のコンパクトディスク記憶装置、磁気ディスク記憶装置又は他の磁気記憶装置、フラッシュメモリ又は命令若しくはデータ構造の形態で所望のプログラムコードを記憶するために用いることができ、コンピュータによってアクセス可能な任意の他の媒体を含み得る。加えて、任意の接続もコンピュータ読み取り可能媒体と適切に言及される。例えば、同軸ケーブル、光ファイバ、ツイストペア、デジタル加入者線(DSL)又は赤外線、無線及びマイクロ波等の無線技術を介して、ウェブサイト、サーバ又は他のリモートソースから命令が送信される場合、同軸ケーブル、光ファイバ、ツイストペア、DSL又は赤外線、無線及びマイクロ波等の無線技術も媒体の定義に含まれる。しかしながら、コンピュータ読み取り可能記憶媒体及びデータ記憶媒体は、接続、キャリア、信号又は他の一時的な媒体を含まず、実際には非一時的な有形の記憶媒体を意味することを理解すべきである。本明細書で用いられる磁気ディスク及びディスクは、コンパクトディスク(CD)、レーザディスク、光ディスク、DVD及びブルーレイディスクを含む。通常、磁気ディスクは磁気的にデータを再生するのに対して、ディスクはレーザーを用いて光学的にデータを再生する。前述の項目の組み合わせもコンピュータ読み取り可能媒体の範囲に含まれるべきである。
命令は、1つ以上のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)又は他の同等の集積若しくは個別の論理回路等の1つ以上のプロセッサによって実行され得る。したがって、本明細書で用いる「プロセッサ」という用語は前述の構造又は本明細書に記載の技術の実施に適用され得る任意の他の構造を意味し得る。加えて、一部の態様では、本明細書に記載の例示の論理ブロック、モジュール及びステップを参照して説明される機能は、符号化及び復号化のために構成される専用ハードウェア及び/又はソフトウェアモジュール内で提供されていいし、統合コーデックに組み込まれてもよい。加えて、これらの技術は、全て1つ以上の回路又は論理素子において実施され得る。1つの例では、エンコーダ100及びデコーダ200内の様々な記述論理ブロック、ユニット及びモジュールは、対応する回路デバイス又は論理素子として理解され得る。
本願における技術は、無線ハンドセット、集積回路(IC)又はICのセット(例えば、チップセット)を含む様々な装置又はデバイスで実施され得る。様々なコンポーネント、モジュール又はユニットが開示の技術を行うように構成された装置の機能的側面を強調するために本出願で記載されているが、必ずしも異なるハードウェアユニットにより実施されるわけではない。実際には、上述したように、様々なユニットが、適切なソフトウェア及び/又はファームウェアとの組み合わせでコーデックハードウェアユニットに統合され得るか又は(上述した1つ以上のプロセッサを含む)相互運用可能なハードウェアユニットによって提供され得る。
前述の説明は本願の特定の実施の例に過ぎず、本願の保護範囲を制限することを意図するものではない。本願に開示の技術的範囲内で当業者が容易に思いつく任意の変更又は代替は本願の保護範囲に含まれる。したがって、本願の保護範囲は、特許請求の範囲の保護範囲に従うものとする。
本願は、2018年12月13日に中国国家知識産権局に出願された「点群符号化方法及びエンコーダ」と題する中国特許出願第201811527959.5号に対する優先権を主張し、その全体が参照により本願に組み込まれる。
本願は符号化技術の分野に関し、とりわけ点群(点群)符号化方法及びコーデックに関する。
3Dセンサ(例えば、3Dスキャナ)技術の継続的な開発により、点群データの収集がより便利になり、収集された点群データのスケールがより大きくなっている。したがって、どのように点群データを効率的に符号化するかが解決されるべき緊急の問題となっている。
本願の実施形態は、符号化効率を改善するのを助けるために、点群符号化方法及びエンコーダを提供する。
第1の態様によれば、点群符号化方法が提供され、符号化すべき点群グループを複数のサブグループにグループ化することであって、該符号化すべき点群グループを複数のサブグループにグループ化することは、前記符号化すべき点群グループ内の点群の複数のフレームを予めグループ化して予めグループ化されたサブグループを取得することと、前記予めグループ化されたサブグループの特徴情報に基づいて、前記予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することと、を含み、前記特徴情報は、前記予めグループ化されたサブグループ内の点群の占有マップのサイズを表すのに用いられる、ことと、前記複数のサブグループに含まれる点群を符号化することと、を含む。点群の占有マップのサイズは点群の深度マップのサイズ及びテクスチャマップのサイズを決定し、点群の占有マップ、深度マップ及びテクスチャマップのサイズは、点群符号化プロセスにおけるビデオ符号化効率に影響する重要な要因である。したがって、この技術的解決策では、符号化すべき点群グループがグループ化されるサブグループは、予めグループ化されたサブグループ内の点群の占有マップのサイズを参照して決定される。これはビデオ符号化効率の向上を助け、それにより点群符号化効率が向上される。
可能な設計では、点群の占有マップのサイズを表すために点群の占有マップの面積、高さ又は幅が用いられる。
可能な設計では、予めグループ化されたサブグループの特徴情報は以下のうちの少なくとも1つを含み得る:予めグループ化されたサブグループのグローバル占有マップのサイズ(すなわち、情報1)、予めグループ化されたサブグループ内の点群の占有マップのサイズ(すなわち、情報2)及び予めグループ化されたサブグループのユニオンパッチ占有マップの領域(すなわち、情報3)。情報1及び情報3は、サブグループ内の点群の占有マップサイズ情報を間接的に表現し得る。情報2は、サブグループ内の点群の占有マップサイズ情報を直接表し得る。
可能な設計では、グローバル占有マップのサイズは、グローバル占有マップの高さによって表現され得る。確かに、これは本願のこの実施形態において限定されない。
可能な設計では、点群の占有マップのサイズは、点群の占有マップの高さによって表され得る。確かに、これは本願のこの実施態様において限定されない。
可能な設計では、サブグループ決定プロセスでは、予めグループ化することを1回以上行うことが通常必要があり(例えば、予めグループ化することは、ウインドウスライディング法又は二分法を用いて行われる)、予めグループ化することが行われる毎に1つの予めグループ化されたサブグループが決定され得る。なお、一部の実施形態では、特定のときに行われる予めグループ化することは、予めグループ化されたサブグループを再度取得するために再び行われ得る。
可能な設計では、本方法は、グローバルマッチングパッキングアルゴリズムを用いることにより予めグループ化されたサブグループの特徴情報を決定することをさらに含む。
可能な設計では、前記符号化すべき点群グループ内の点群の複数のフレームを予めグループ化して予めグループ化されたサブグループを取得することは、点群のj番目のフレームを開始点として用いることにより、前記符号化すべき点群グループにグループ化されていない点群をi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得することを含み、前記点群のj番目のフレームは、前記グループ化されていない点群内の点群の第1のフレームであり、i≧1であり、iは整数であり、j≧1であり、jは整数であり、前記i番目の予めグループ化されたサブグループは、前記点群のj番目のフレームから始まる点群の1つ以上のフレームを含む。それに対応して、前記予めグループ化されたサブグループの特徴情報に基づいて、前記予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することとは、前記i番目の予めグループ化されたサブグループの特徴情報に基づいて、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することを含む。本願のこの実施形態では、符号すべき点群に含まれるサブグループが決定された場合に、符号化すべき点群内の点群の順序に基づいて次のサブグループを決定する技術的解決策がサポートされることが分かる。
可能な設計では、前記i番目の予めグループ化されたサブグループの特徴情報に基づいて、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することは、前記i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することを含む。
可能な設計では、前記i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することは、前記i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が該所定の条件を満たさない場合に、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することを含む。このように、サブグループ内の点群がグローバルマッチングパッキングアルゴリズムを用いてパッキングされている場合に、符号化効率を改善するために符号化すべき点群グループ内の可能な限り多くの点群が所定の条件を満たすサブグループを形成する。
可能な設計では、前記i番目の予めグループ化されたサブグループの情報は、前記i番目の予めグループ化されたサブグループのグローバル占有マップのサイズを含む。それ対応して、前記i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が該所定の条件を満たさない場合に、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することは、前記i番目の予めグループ化されたサブグループのグローバル占有マップのサイズが第1の閾値以下であり、前記(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズが該第1の閾値よりも大きい場合に、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することを含む。
任意で、前記第1の閾値は所定の値(例えば、固定値)である。あるいは、前記第1の閾値は、候補パッキングアルゴリズムに基づいて得られる、前記符号化すべき点群グループ内の点群の占有マップの最大サイズに基づいて決定される。
可能な設計では、前記i番目の予めグループ化されたサブグループの特徴情報は、前記i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズを含む。それ対応して、前記i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合に、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することは、前記i番目の予めグループ化されたサブグループ内の大型点群のフレームの数が第1の所定の数以下であり、前記(i+1)番目の予めグループ化されたサブグループ内の大型点群のフレームの数が該第1の所定の数よりも大きい場合、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することであって、前記大型点群は、占有マップのサイズが第2の閾値以上の点群である、こと、又は候補パッキングアルゴリズムに基づいて得られる、前記i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、前記i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が第3の閾値以下であり、候補パッキングアルゴリズムに基づいて得られる、前記(i+1)番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、前記(i+1)番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が前記第3の閾値よりも大きい場合に、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定すること、を含む。
任意で、前記第2の閾値は所定の値である(例えば、固定値)。あるいは、前記大型点群は、グローバルマッチングパッキングアルゴリズムに基づいて得られた占有マップのサイズが前記第2の閾値以上である点群であり、前記第2の閾値は、候補パッキングアルゴリズムに基づいて得られる、前記符号化すべき点群グループ内の点群の占有マップの最大サイズに基づいて決定されるか又は候補パッキングアルゴリズムに基づいて得られる、現在の点群の占有マップのサイズに基づいて決定される。
可能な設計では、前記i番目の予めグループ化されたサブグループの特徴情報は、前記i番目の予めグループ化されたサブグループのグローバル占有マップのサイズを含む。それ対応して、前記i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することは、(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズが(i)番目の予めグループ化されたサブグループのグローバル占有マップのサイズに比べて第5の閾値以上減少した場合に、それに比べてi番目の予めグループ化されたサブグループがサブグループとして用いられることを示し、(i+1)番目の予めグループ化されたサブグループがサブグループとして用いられた場合に、グローバルマッチングパッキングアルゴリズムを用いることによりパッキングが行われると点群符号化効率が大幅に低下する。この場合、i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定される。これは、i番目の予めグループ化されたサブグループ内のグローバルマッチパッチのグループが(i+1)番目の予めグループ化されたサブグループ内のグローバルマッチパッチではないことを考慮して提案される技術的解決策である。
可能な設計では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのユニオンパッチ占有マップの面積を含む。それに対応して、i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予備グループ化サブグループが複数のサブグループの1つであると決定することは、(i+1)番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積が(i)番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積に比べて第4の閾値以上減少した場合に、それに比べてi番目の予めグループ化されたサブグループがサブグループとして用いられることを示し、(i+1)番目の予めグループ化されたサブグループがサブグループとして用いられた場合に、グローバルマッチングパッキングアルゴリズムを用いることによりパッキングが行われると点群符号化効率が大幅に低下する。この場合、(i)番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定される。これは、i番目の予めグループ化されたサブグループ内のグローバルマッチパッチのグループが(i+1)番目の予めグループ化されたサブグループ内のグローバルマッチパッチではないことを考慮して提案される技術的解決策である。
可能な設計では、前記符号化すべき点群グループにグループ化されていない点群を、点群のj番目のフレームを開始点として用いることによりi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得することは、前記点群のj番目のフレームを開始点として用いることにより、前記符号化すべき点群グループにグループ化されていない点群に対してウィンドウをi回目にスライドさせて前記i番目の予めグループ化されたサブグループを取得すること又は前記点群のj番目のフレームを開始点として用いることにより、前記符号化すべき点群グループにグループ化されていない点群に対して二分法をi回目に行うことにより前記i番目の予めグループ化されたサブグループを取得することを含む。異なる回数にウィンドウをスライドさせるのに用いられるステップサイズは固定又は可変であってもよい。任意で、i1回目にウィンドウをスライドさせるのに用いられるステップサイズは、i2回目にウィンドウをスライドさせるのに用いられるステップサイズ以上であり、1≦i1<i2≦iであり、i1及びi2の双方は整数である。さらに任意で、前記方法は、式N[i+1]=N[i]×cにしたがって、(i+1)回目にウィンドウをスライドさせるのに用いられるステップサイズN[i+1]を得ることをさらに含み、N[i]はi回目にウィンドウをスライドさせるのに用いられるステップサイズであり、cは、前記i番目の予めグループ化されたサブグループ内の大型点群のフレームの数に基づいて決定され、該大型点群は、占有マップのサイズが前記第2の閾値以上の点群である。例えば、cは式c=(a-b)/aを満たし、aは前記第1の所定の数であり、bは前記i番目の予めグループ化されたサブグループ内の大型点群のフレームの数である。
可能な設計では、前記符号化すべき点群グループにグループ化されていない点群を、点群のj番目のフレームを開始点として用いることによりi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得することは、前記点群のj番目のフレームを開始点として用いることにより、前記符号化すべき点群グループにグループ化されていない点群に対してi回目にウィンドウをスライドさせて前記i番目の予めグループ化されたサブグループを取得することを含む。それに対応して、前記i番目の予めグループ化されたサブグループの特徴情報に基づいて、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することは、
前記i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が該所定の条件を満たさない場合に、第2のステップサイズを用いることにより(i+1)番目の予めグループ化されたサブグループを再取得することであって、該第2のステップサイズは第1のステップサイズよりも小さく、該第1のステップサイズは(i+1)番目の予めグループ化されたサブグループが最初に得られるときに用いられるステップサイズである、ことと、再度取得された(i+1)番目の予めグループ化されたサブグループの特徴情報が前記所定の条件を満たさない場合に、第3のステップサイズを用いることにより(i+1)番目の予めグループ化されたサブグループを再取得し、該第3のステップサイズは前記第2のステップサイズよりも小さく、同様に、(i+1)番目の予めグループ化されたサブグループを再取得した回数が所定の回数に達するか又は最新の再取得した(i+1)番目の予めグループ化されたサブグループのステップサイズが所定のステップサイズ以下である場合に、最新の再取得した(i+1)番目の予めグループ化されたサブグループの特徴情報が前記所定の条件を満たさない場合に、前記i番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することを含む。このように、サブグループ内の点群がグローバルマッチングパッキングアルゴリズムを用いてパッキングされる場合に、符号化効率を改善するために、符号化すべき点群グループ内の可能な限り多くの点群が所定の条件を満たすサブグループを形成する。
これに基づいて、任意で、前記符号化すべき点群を複数のサブグループにグループ化することは、前記再取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数以下である場合に、この時に再取得された(i+1)番目の予めグループ化されたサブグループがサブグループであると決定すること、又は前記再取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数よりも大きい場合に、第4のステップサイズを用いることにより(i+2)番目の予めグループ化されたサブグループを取得することであって、前記第2のステップサイズと前記第4のステップサイズとの合計は前記第1のステップサイズよりも小さい、ことと、前記(i+2)番目の予めグループ化されたサブグループの特徴情報が前記所定の条件を満たす場合に、第5のステップサイズを用いることにより(i+3)番目の予めグループ化されたサブグループを取得することであって、前記第2のステップサイズ、前記第4のステップサイズ及び該第5のステップサイズの合計は前記第1のステップサイズよりも小さい、ことと、同様に、取得された(i+k)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が前記第2の所定の数以下の場合に、(i+k)番目の予めグループ化されたサブグループの特徴情報が前記所定の条件を満たす場合、前記(i+k)番目の予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することであって、k≧2であり、kは整数である、ことと、を含む。このように、サブグループ内の点群がグローバルマッチングパッキングアルゴリズムを用いてパッキングされる場合に、符号化効率を改善するために、符号化すべき点群グループ内の可能な限り多くの点群が所定の条件を満たすサブグループを形成する。
可能な設計では、前記符号化すべき点群グループにグループ化されていない点群を、点群のj番目のフレームを開始点として用いることによりi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得することは、点群のj番目のフレームを開始点として用いることにより、前記符号化すべき点群グループにグループ化されていない点群に対してi回目に二分法を行うことにより前記i番目の予めグループ化されたサブグループを取得することを含む。それに対応して、前記i番目の予めグループ化されたサブグループの特徴情報に基づいて、前記予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することは、前記i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合に、前記i番目の予めグループ化されたサブグループは前記複数のサブグループのうちの1つであると決定することを含む。
可能な設計では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズを含む。それに対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすことは、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズが第1の閾値以下であること及び/又は(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズが、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズと比べて第5の閾値以上減少することを含む。
可能な設計では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループ内の点群のグローバル占有マップのサイズを含む。それに対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすことは、i番目の予めグループ化されたサブグループ内の大型点群のフレームの数が第1の所定の数以下であることであって、大型点群は占有マップのサイズが第2の閾値以上の点群であること又は候補パッキングアルゴリズムに基づいて得られる、前記i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、前記i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が第3の閾値以下であることを含む。第2の閾値については、上記の説明を参照されたい。
可能な設計では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのユニオンパッチ占有マップの面積を含む。それに対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすことは、(i+1)番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積がi番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積に比べて第4の閾値以上減少することを含む。
上記は、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす特定の実施を提供することが分かり得る。それに対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない実施が得られることがあり、(i+k)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすかどうかの実施が得られることがあり、k≧1であり、kは整数である。
第2の態様によれば、グループ化モジュール及び符号化モジュールを含むエンコーダが提供される。グループ化モジュールは、符号化すべき点群グループを複数のサブグループにグループ化するように構成され、符号化すべき点群グループを複数のサブグループにグループ化することは、前記符号化すべき点群グループ内の点群の複数のフレームを予めグループ化して予めグループ化されたサブグループを取得することと、前記予めグループ化されたサブグループの特徴情報に基づいて、前記予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することと、を含み、前記特徴情報は、前記予めグループ化されたサブグループ内の点群の占有マップのサイズを表すのに用いられる。符号化モジュールは前記複数のサブグループに含まれる点群を符号化するように構成されている。
グループ化モジュールにより行われるステップの特定の実施又は関連する内容の説明については、第1の態様の説明を参照されたい。ここでは、詳細については繰り返し説明しない。
第3の態様によれば、点群データ符号化装置が提供される。当該装置はメモリ及びエンコーダを含み得る。メモリは点群データを記憶するように構成されている。エンコーダは、第1の態様のいずれか1つ又は第1の態様の可能な設計で提供される点群符号化方法を行うように構成されている。
第4の態様によれば、互いに連結された不揮発性メモリ及びプロセッサを含む符号化装置が提供される。プロセッサは、メモリに記憶されたプログラムコードを呼び出して、第1の態様のいずれか1つ又は第1の態様の可能な設計で提供される点群符号化方法のステップの一部又は全てを行う。
第5の態様によれば、符号化装置が提供される。当該装置はメモリ及びプロセッサを含む。メモリはプログラムコードを記憶するように構成されている。プロセッサは、プログラムコードを呼び出して、第1の態様のいずれか1つ又は第1の態様の可能な設計で提供される点群符号化方法のステップの一部又は全てを行うように構成されている。
第6の態様によれば、コンピュータ読み取り可能記憶媒体が提供される。コンピュータ読み取り可能記憶媒体はプログラムコードを記憶する。プログラムコードがコンピュータ上で実行された場合、第1の態様のいずれか1つ又は第1の態様の可能な設計で提供される点群符号化方法のステップの一部又は全てが行われる。
第7の態様によれば、コンピュータプログラム製品が提供される。コンピュータプログラム製品がコンピュータ上で実行された場合、コンピュータは、第1の態様のいずれか1つ又は第1の態様の可能な設計で提供される点群符号化方法のステップの一部又は全てを行うことができる。
なお、上述のエンコーダ、点群データ符号化装置、符号化デバイス、符号化装置、コンピュータ読み取り可能記憶媒体又はコンピュータプログラム製品の有益な効果については、第1の態様で提供される対応する方法の実施形態の有益な効果を参照すべきである。ここでは、詳細について説明を繰り返さない。
図1は、本願の一実施形態に適用可能な例示の点群符号化システムの概略ブロック図である。
図2は、本願の実施形態に適用可能な例示のエンコーダの概略ブロック図である。
図3(a)~図3(c)は、本願の一実施形態に適用可能な、点群、点群のパッチ及び点群の占有マップの概略図である。
図4は、本願の一実施形態に適用可能な例示のデコーダの概略ブロック図である。
図5は、本願の一実施形態に係る点群符号化方法の概略フロー図である。
図6は、本願の一実施形態に係る、スライディングウインドウ、ステップサイズ及び予めグループ化されたサブグループ間の対応の概略図である。
図7は、本願の一実施形態に係るサブグループ決定方法の概略フロー図である。
図8Aは、本願の一実施形態に係るサブグループ決定プロセスの概略図である。
図8Bは、本願の一実施形態に係る別のサブグループ決定プロセスの概略図である。
図9A及び図9Bは、本願の一実施形態に係る別のサブグループ決定方法の概略フロー図である。
図10は、本願の一実施形態に係る、図9A及び図9Bに基づくサブグループ決定方法のプロセスの概略図である。
図11Aは、本願の一実施形態に係る、図9A及び図9Bに基づくサブグループ決定方法のプロセスの概略図である。
図11Bは、本願の一実施形態に係る、図9A及び図9Bに基づく別のサブグループ決定方法のプロセスの概略図である。
図12(a)及び図12(b)は、本願の一実施形態に係る、二分法と予めグループ化されたサブグループとの関係の概略図である。
図13は、本願の一実施形態に係る別のサブグループ決定方法の概略的なフロー図である。
図14は、本願の一実施形態に係る別のサブグループ決定方法の概略的なフロー図である。
図15は、本願の一実施形態に係るエンコーダの概略ブロック図である。
図16は、本願の一実施形態に係る符号化装置の実施の概略ブロック図である。
図1は、本願の実施形態に適用可能な例示の点群符号化システム1の概略ブロック図である。「点群符号化」又は「符号化」という用語は、概して点群エンコーディング又は点群復号化であり得る。点群符号化システム1内のエンコーダ100は、本願において提供される任意の点群符号化方法にしたがって符号化すべき点群を符号化し得る。点群符号化システム1内のデコーダ200は、エンコーダによって用いられる点群符号化方法に対応して本願において提供される点群復号方法にしたがって符号化すべき点群を復号化し得る。
図1に示すように、点群符号化システム1はソース装置10及び送り先装置20を含む。ソース装置10は符号化点群データを生成する。したがって、ソース装置10は点群符号化装置と呼ばれ得る。送り先装置20は、ソース装置10によって生成された符号化点群データを復号化し得る。したがって、送り先装置20は、点群復号化装置と呼ばれ得る。ソース装置10、送り先装置20又はソース装置10及び送り先装置20の双方の様々な実施解決策は、1つ以上のプロセッサと、1つ以上のプロセッサに連結されたメモリとを含み得る。メモリは、限定されないが、ランダムアクセスメモリ(Random access memory、RAM)、リードオンリーメモリ(Read-only memory、ROM)、電気的に消去可能なプログラマブルリードオンリーメモリ(electrically erasable programmable read-only memory、EEPROM)、フラッシュメモリ又は本明細書に記載されているように、コンピュータによりアクセス可能な命令又はデータ構造の形態で所望のプログラムコードを記憶するために用いることが可能な他の任意の媒体を含み得る。
ソース装置10及び送り先装置20は、デスクトップコンピュータ、モバイルコンピュータ装置、ノートブック(例えば、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、「スマート」フォン等のハンドヘルド電話機、テレビ受像機、カメラ、ディスプレイ装置、デジタルメディアプレーヤ、ビデオゲーム機、車載型コンピュータ及び同様の装置を含む様々な装置を含み得る。
送り先装置20は、リンク30を介してソース装置10から符号化点群データを受信し得る。リンク30は、符号化点群データをソース装置10から送り先装置20に移動させることができる1つ以上の媒体又は装置を含み得る。1つの例では、リンク30は、ソース装置10が符号化点群データを送り先装置20にリアルタイムで直接送信できるようにする1つ以上の通信媒体を含み得る。この例では、ソース装置10は、通信標準(例えば、無線通信プロトコル)に従って符号化点群データを変調し、変調した点群データを送り先装置20に送信し得る。1つ以上の通信媒体は、無線及び/又は有線の通信媒体、例えば無線周波数(radio frequency、RF)スペクトル又は1つ以上の物理的伝送線路を含み得る。1つ以上の通信媒体は、パケットベースのネットワークの一部を構成してもよく、パケットベースのネットワークは、例えばローカルエリアネットワーク、ワイドエリアネットワーク又はグローバルネットワーク(例えば、インターネット)である。1つ以上の通信媒体は、ルータ、スイッチ、基地局又はソース装置10から送り先装置20への通信を促進する他の装置を含み得る。
別の例では、符号化データは、出力インターフェイス140を介して記憶装置40に出力され得る。同様に、符号化点群データは、入力インターフェイス240を介して記憶装置40からアクセスされ得る。記憶装置40は、複数の分散されたデータ記憶媒体又はローカルにアクセスされるデータ記憶媒体、例えばハードドライブ、ブルーレイディスク、デジタル多用途ディスク(digital versatile disc、DVD)、コンパクトディスク読取り専用メモリ(compact disc read-only memory、CD-ROM)、フラッシュメモリ、揮発性若しくは不揮発性メモリ又は符号化点群データを記憶するように構成された任意の他の適切なデジタル記憶媒体のうちのいずれか1つを含み得る。
別の例では、記憶装置40は、ソース装置10によって生成された符号化点群データを記憶可能なファイルサーバ又は別の中間記憶装置に対応し得る。送り先装置20は、記憶された点群データにストリーミング送信又はダウンロードを通じて記憶装置40からアクセスし得る。ファイルサーバは、符号化点群データを記憶し、符号化点群データを送り先装置20に送ることができる任意の種類のサーバであり得る。ファイルサーバの例としては、(例えば、ウェブサイトで用いられる)ネットワークサーバ、ファイル転送プロトコル(file transfer protocol、FTP)サーバ、ネットワーク接続ストレージ(network attached storage、NAS)装置又はローカルディスクドライブが挙げられる。送り先装置20は、(インターネット接続を含む)任意の標準データ接続を通じて符号化点群データにアクセスし得る。標準的なデータ接続は、無線チャネル(例えば、Wi-Fi接続)、有線接続(たとえば、デジタル加入者回線(digital subscriber line、DSL)又はケーブルモデム)又はファイルサーバに記憶された符号化点群データにアクセスするのに好適なそれらの組み合わせを含み得る。記憶装置40からの符号化点群データの送信は、ストリーミング送信、ダウンロード送信又はそれらの組み合わせであり得る。
図1に示す点群符号化システム1は一例に過ぎず、本願における技術は、必ずしも点群符号化装置と点群復号装置との間のデータ通信を含まない点群符号化(例えば、点群エンコーディング又は点群復号化)装置に適用可能である。別の例では、データはローカルメモリから取り出され、ストリーミング方式等でネットワーク上に送信される。点群符号化装置は該データを符号化し、該データをメモリに記憶し得る及び/又は点群復号化装置はメモリから該データを取り出し、該データを復号化し得る。多くの例では、データを符号化し、メモリにデータを記憶する及び/又はメモリからデータを取り出し、データを復号化するだけで、互いに通信しない装置は符号化及び復号化を行う。
図1の例では、ソース装置10はデータソース120、エンコーダ100及び出力インターフェイス140を含む。一部の例では、出力インターフェイス140は変調器/復調器(モデム)及び/又は送信器を含み得る。データソース120は、点群捕捉装置(例えば、カメラ)、以前捕捉された点群データを含む点群アーカイブ、点群コンテンツプロバイダから点群データを受信するように構成された点群フィードインインターフェイス及び/又は点群データを生成するように構成されたコンピュータグラフィックスシステム又はこれらの点群データソースの組み合わせを含み得る。
エンコーダ100は、データソース120からの点群データを符号化し得る。一部の例では、ソース装置10は、出力インターフェイス140を介して符号化点群データを送り先装置20に直接送信する。別の例では、符号化点群データは代替的に記憶装置40に記憶されてもよく、その結果、送り先装置20はその後に復号化及び/又は再生のために符号化点群データにアクセスする。
図1の例では、送り先装置20は入力インターフェイス240、デコーダ200及び表示装置220を含む。一部の例では、入力インターフェイス240は受信機及び/又はモデムを含む。入力インターフェイス240は、リンク30を介して及び/又は記憶装置40から符号化点群データを受信し得る。表示装置220は、送り先装置20と一体化され得るか又は送り先装置20の外に配置し得る。通常、表示装置220は復号化された点群データを表示する。複数の種類の表示装置220が存在してもよい。例えば、表示装置220は液晶ディスプレイ(liquid crystal display、LCD)、プラズマディスプレイ、有機発光ダイオード(organic light-emitting diode、有機EL)ディスプレイ又は別の種類の表示装置であり得る。
図1には示されていないが、一部の態様では、エンコーダ100及びデコーダ200は、オーディオエンコーダ及びオーディオデコーダとそれぞれ一体化されてもよく、統合データストリーム又は別個のデータストリームにおけるオーディオ及びビデオの符号化を処理するために適切なマルチプレクサ-デマルチプレクサ(mutiplexer-demultiplexer、MUX-DEMUX)ユニット又は他のハードウェア及びソフトウェアを含み得る。一部の例では、必要に応じて、MUX-DEMUXユニットはITU H.223マルチプレクサプロトコル又はユーザデータグラムプロトコル(user datagram protocol、UDP)等の別のプロトコルに準拠し得る。
エンコーダ100及びデコーダ200は、例えば、1つ以上のマイクロプロセッサ、デジタル信号プロセッサ(digital signal processor、DSP)、特定用途向け集積回路(application specific integrated circuit、ASIC)、フィールドプログラマブルゲートアレイ(field-programmable gate array、FPGA)、個別ロジック、ハードウェア又はそれらの任意の組み合わせといった複数の回路のいずれか1つとしてそれぞれ実施され得る。本願が部分的にソフトウェアを用いることにより部分的に実施される場合、装置は適切な不揮発性コンピュータ読み取り可能記憶媒体にソフトウェアのために用いられる命令を記憶し、1つ以上のプロセッサを用いて命令をハードウェアで実行してこの本願における技術を実施する。(ハードウェア、ソフトウェア、ハードウェア及びソフトウェアの組み合わせ等を含む)上記の内容のいずれか1つは1つ以上のプロセッサとみなされ得る。エンコーダ100及びデコーダ200のそれぞれは、1つ以上のエンコーダ又はデコーダに含まれてもよく、エンコーダ又はデコーダは、対応する装置において組み合わされたエンコーダ/デコーダの一部として一体化され得る。
本願では、エンコーダ100は、例えばデコーダ200に何らかの情報を「送信する」又は「送る」する別の装置と概して呼ばれ得る。「送信」又は「送る」という用語は、圧縮された点群データを復号化するために用いられる構文要素及び/又は他のデータの伝送を概して意味し得る。伝送は、リアルタイムで又は略リアルタイムで起こり得る。あるいは、通信は一定期間後に起こり得る。例えば、通信は、符号化ビットストリーム中の構文要素が符号化の間にコンピュータ読み取り可能記憶媒体に記憶されたときに起きてもよく、そして復号化装置は構文要素が媒体に記憶された後の任意の時間に構文要素を取り出し得る。
図2は、本願の実施形態に適用可能な例示のエンコーダ100の概略ブロック図である。図2における説明の例として、MPEG(Moving Picture Expert Group)点群圧縮(Point Cloud Compression、PCC)符号化フレームワークが用いられる。図2の例では、エンコーダ100はパッチ情報生成モジュール101、パッキングモジュール102、深度マップ生成モジュール103、テクスチャマップ生成モジュール104、第1の充填モジュール105、画像ベース又はビデオベースの符号化モジュール106、占有マップ符号化モジュール107、補助情報符号化モジュール108、マルチプレクサモジュール109等を含み得る。加えて、エンコーダ100は点群フィルタリングモジュール110、第2の充填モジュール111、点群再構成モジュール112等をさらに含み得る。詳細は以下の通りである。
パッチ情報生成モジュール101は、方法を用いて点群のフレームを複数のパッチに分割し、生成されたパッチ等の関連情報を取得するように構成されている。パッチは、点群の1フレーム内のいくつかの点を含むセットである。通常、1つの接続領域が1つのパッチに対応する。パッチの関連情報は、限定されないが、点群を分割することによって得られるパッチの数、3次元空間における各パッチの位置情報、各パッチの法線座標軸のインデックス及び各パッチが3次元空間から2次元空間へ投影されるときに生成される深度マップ、各パッチの深度マップのサイズ(例えば、深度マップの幅及び高さ)、各パッチが3次元空間から2次元空間に投影されるときに生成される占有マップ等の情報のうちの少なくとも1つを含み得る。点群を分割することによって得られるパッチの数、各パッチの法線座標軸のインデックス、各パッチの深度マップのサイズ、点群内の各パッチの位置情報及び各パッチの占有マップのサイズ情報等の関連情報の一部は、補助情報として用いてもよく、符号化(すなわち、圧縮符号化)のために補助情報符号化モジュール108に送信され得る。各パッチの占有マップはパッキングのためにパッキングモジュール102に送信され得る。加えて、点群の占有マップ内の各パッチの特定の位置、各パッチの深度マップ等に関する情報が深度マップ生成モジュール103に送信され得る。
パッキングモジュール102が点群の占有マップを取得した後、第2の充填モジュール111は点群の占有マップを充填し、次いで、符号化のために占有マップ符号化モジュール107に点群の充填された占有マップを送信し得る。加えて、深度マップ生成モジュール103をガイドして点群の深度マップを生成し、テクスチャマップ生成モジュール104をガイドして点群のテクスチャマップを生成するために点群の占有マップが用いられ得る。
図3(a)~図3(c)は、本願の実施形態に適用可能な点群、点群のパッチ及び点群の占有マップの概略図である。図3(a)は点群のフレームの概略図である。図3(b)は、図3(a)に基づいて得られる点群のパッチの概略図である。図3(c)は、図3(b)に示すパッチを二次元平面上にマッピングすることによって得られるパッチの占有マップをパッキングすることによって得られる、点群の占有マップの概略図である。
深度マップ生成モジュール103は、点群の占有マップ並びに点群内の各パッチの占有マップ及び深度情報に基づいて点群の深度マップを生成し、生成された深度マップを第1の充填モジュール105に送信するように構成され、それにより第1の充填モジュール105が深度マップ内の空のピクセルを充填して充填深度マップが得られる。
テクスチャマップ生成モジュール104は、点群の占有マップ並びに点群内の各パッチの占有マップ及びテクスチャ情報に基づいて点群のテクスチャマップを生成し、生成されたテクスチャマップを第1の充填モジュール105に送るように構成され、それにより第1の充填モジュール105が受信したテクスチャマップ内の空のピクセルを充填して充填テクスチャマップが得られる。
第1の充填モジュール105は、画像ベース又はビデオベースの符号化のために、画像ベース又はビデオベースの符号化モジュール106に充填深度マップ及び充填テクスチャマップを送信する。後続のプロセスは以下のとおりである。
一方で、画像ベース又はビデオベースの符号化モジュール106、占有マップ符号化モジュール107及び補助情報符号化モジュール108は、得られた符号化結果(すなわち、ビットストリーム)をマルチプレクサモジュール109に送信し、マルチプレクサモジュール109は符号化結果を1つのビットストリームに統合し、ビットストリームが出力インターフェイス140に送信され得る。
他方で、画像ベース又はビデオベースの符号化モジュール106は、得られた符号化結果(すなわち、ビットストリーム)を点群再構成のために点群再構成モジュール112に送信し、再構成された点群が得られる(すなわち、点群の再構成された幾何学情報が得られる)。具体的には、点群の復号化深度マップを得るために、画像ベース又はビデオベースの符号化モジュール106によって得られた符号化深度マップに対してビデオ復号化が行われ、復号化された深度マップ、点群の占有マップ及び各パッチの補助情報を用いることにより点群の再構成された幾何情報がえら得る。点群の幾何学情報は、3次元空間における点群内の点(例えば、点群内の各点)の座標値を意味する。
任意で、点群再構成モジュール112は、カラーリングモジュールに点群のテクスチャ情報及び点群の再構成された幾何学情報をさらに送信し得る。カラーリングモジュールは、再構成された点群のテクスチャ情報を得るために、再構成された点群に色付けするように構成されている。
任意で、テクスチャマップ生成モジュール104は、点群の再構成された幾何学情報をフィルタリングすることにより点群フィルタモジュール110によって得られる情報に基づいて、点群のテクスチャマップをさらに生成し得る。
図2に示すエンコーダ100は一例にすぎないことが理解され得る。特定の実施では、エンコーダ100は図2に示すものよりも多くの又は少ないモジュールを含み得る。これは、本願のこの実施態様に限定されない。
1つの例では、本願のこの実施形態に適用された場合、パッキングモジュール102はグループ化サブモジュール(図示せず)及びパッキングサブモジュール(図示せず)を含み得る。グループ化サブモジュールは、コード化すべき点群グループを予めグループ化して予めグループ化されたサブグループを得るように構成されている。パッキングサブモジュールは、所定のパッキングアルゴリズム(例えば、グローバルマッチングパッキングアルゴリズム)に基づいて予めグループ化されたサブグループ内の点群内のパッチの占有マップをパッキングし、パッキングプロセス中に又はパッキングの後に得られた予めグループ化されたサブグループの特徴情報をグループ化サブモジュールに送信するように構成されている。グループ化サブモジュールは、コード化すべき点群グループを特徴情報に基づいてグループ化する。対応する例は以下の通りである。
1つの例では、パッキングモジュール102は、符号化すべき点群グループを複数のサブグループにグループ化する。符号化すべき点群グループをグループ化するプロセスにおいて、複数のサブグループに含まれる点群の占有マップが生成され、点群の占有マップが、深度マップ生成モジュール103、テクスチャマップ生成モジュール104及び第2の充填モジュール111に送信される。この場合、点群の占有マップを受信するモジュール及びモジュールに接続されるか又は通信するモジュールが互いに協働してエンコード機能を完成させる。
別の例では、パッキングモジュール102により行われるグループ化及びパッキングは、比較的お互いに独立している。それに対応して、パッキングモジュール102はグループ化サブモジュール(図示せず)及びパッキングサブモジュール(図示せず)を含み得る。符号化すべき点群グループをグループ化した後、グループ化サブモジュールはパッキングサブモジュールにグループ化結果を送信し、パッキングサブモジュールは、複数のサブグループに含まれる点群の占有マップを得るために、グループ化結果に基づいてパッキング作業を行う。点群の占有マップは、深度マップ生成モジュール103、テクスチャマップ生成モジュール104及び第2の充填モジュール111に送信される。この場合、パッキングサブモジュールと、点群の占有マップを受信するモジュールと、モジュールに接続されるか又は通信するモジュールとが協働して符号化機能を完成させる。
図4は、本願の実施形態に適用可能な例示のデコーダ200の概略ブロック図である。図4における説明の例として、MPEG PCC復号化フレームワークが用いられる。図4の例では、デコーダ200は、デマルチプレクサモジュール201、画像ベース又はビデオベースの復号化モジュール202、占有マップ復号化モジュール203、補助情報復号化モジュール204、点群幾何学情報再構成モジュール205、点群フィルタモジュール206及び点群テクスチャ情報再構成モジュール207を含み得る。詳細は以下の通りである。
デマルチプレクサモジュール201は、対応する復号化モジュールに入力ビットストリーム(すなわち、統合ビットストリーム)を送信するように構成されている。具体的には、符号化テクスチャマップを含むビットストリーム及び符号化された深度マップを含むビットストリームが画像ベース又はビデオベースの復号化モジュール202に送信され、符号化された占有マップを含むビットストリームが占有マップ復号化モジュール203に送信され、符号化された補助情報を含むビットストリームが補助情報復号化モジュール204に送信される。
画像ベース又はビデオベースの復号化モジュール202は、受信された符号化テクスチャマップ及び符号化深度マップを復号化し、復号化を通じて得られたテクスチャマップ情報を点群テクスチャ情報再構成モジュール207に送信し、復号化を通じて得られた深度マップ情報を点群幾何情報再構成モジュール205に送信するように構成されている。占有マップ復号化モジュール203は、受信した符号化占有マップを含むビットストリームを復号化し、復号化を通じて得られた占有マップ情報を点群幾何情報再構成モジュール205に送信するように構成されている。補助情報復号化モジュール204は、受信した符号化補助情報を復号化し、復号化を通じて得られた補助情報を示す情報を点群幾何学情報再構成モジュール205に送信するように構成されている。
点群幾何情報再構成モジュール205は、受信した占有マップ情報及び補助情報に基づいて点群幾何情報を再構成するように構成されている。点群フィルタモジュール206によってフィルタリングされた後、再構成された点群幾何学情報は点群テクスチャ情報再構成モジュール207に送信される。
点群テクスチャ情報再構成モジュール207は、再構成された点群を得るために点群のテクスチャ情報を再構成するように構成されている。
図4に示すデコーダ200は一例にすぎないことが分かる。特定の実施では、デコーダ200は図4に示すものよりも多くの又は少ないモジュールを含み得る。これは、本願のこの実施形態に限定されない。
本願の実施形態で提供される技術的解決策の理解を容易にするために、以下では、本願の実施形態で用いられる技術及び用語を説明する。
アンカーアルゴリズムはパッキングアルゴリズムである。具体的には、点群のフレームのパッチは特定の順序で、例えば、パッチの占有マップの幅/高さの降順(又は昇順)に配置される。そして、配置されたパッチの順序で点群の占有マップの利用可能な領域にパッチの占有マップが順次挿入されて点群の占有マップが得られる。
グローバルマッチングパッキングアルゴリズムは、点群の複数のフレームの単位でパッキングが行われるパッキングアルゴリズムであるため、点群の複数のフレームのうちのいずれか1つ内のいずれかのグローバルマッチパッチの占有マップの位置であって、点群のフレームの占有マップ内にある位置が、前述のグローバルマッチパッチとマッチ関係を有し、グローバルマッチパッチが位置する点群の占有マップ内にある位置に対応する。具体的には、本願の実施形態に適用可能なグローバルマッチングパッキングアルゴリズムは以下のステップを含み得る。
ステップ1:点群グループ内のグローバルマッチパッチを取得する。点群グループはN個の点群のフレームを含み、N≧2であり、Nは整数である。
点群のフレーム内のグローバルマッチパッチは、点群のフレーム内にあり、点群グループ内の点群のフレーム以外の点群の各フレーム内にあるパッチとマッチ関係を有するパッチである。加えて、パッチとマッチ関係を有するパッチはグローバルマッチパッチである。パッチとマッチ関係を有するパッチはターゲットパッチのマッチパッチであり、ターゲットパッチはパッチ又はパッチのマッチパッチである。任意で、点群のフレーム内のパッチの点群の別のフレーム内のマッチパッチは、点群の別のフレーム内にあるパッチであり、そのパッチとのインターセクションオーバーユニオン(intersection over union、IoU)が最大であり、所定のしきい値以上であるパッチであり得る。
任意のグローバルマッチパッチとマッチ関係を有するパッチの数はN-1である。
ステップ2:M組に対応するM個のユニオンパッチ占有マップ(すなわち、ユニオン占有マップ)を決定する。ここで、各組はN個のグローバルマッチパッチを含み、N個のグローバルマッチパッチは点群のN個のフレーム内でマッチ関係を有するパッチであり、任意で、m番目の組に対応するユニオンパッチ占有マップは、m番目のセット内の全てのグローバルマッチパッチの占有マップのユニットであり、1≦m≦Mであり、mとMの双方が整数である。
1つのセットに含まれるN個のグローバルマッチパッチが、点群のN個のフレーム内でマッチ関係を有するパッチであることは、N個のグローバルマッチパッチのそれぞれは、点群の1つのフレームに由来し(又は属し)、異なるグローバルマッチパッチは異なる点群に由来し、N個のグローバルマッチパッチはマッチ関係を有することが理解され得る。
グローバルマッチパッチが属するセットに対応するユニオンパッチ占有マップは、グローバルマッチパッチの占有マップを含む。
なお、本願のこの実施形態では、ユニオンパッチ占有マップを得るために用いられ、マッチ関係を有するグローバルマッチパッチは、「グローバルマッチパッチのグループ(又はグローバルマッチングパッチグループ)」と呼ばれ得る。本明細書には一般的な説明が記載されており、詳細について以下で説明されない。
ステップ3:グローバル占有マップ(すなわち、最終占有マップ)を得るためにM個のユニオンパッチ占有マップをパッキングする。ここでグローバル占有マップは、グローバル占有マップ内のM個のユニオンパッチ占有マップの位置を決定するのに用いられ、パッキングプロセスはグローバル占有マップを更新するプロセスとして考えられ得る。例えば、M個のユニオン占有マップは、最終占有マップを得るために、上から下、左から右の順でグローバル占有マップ内の利用可能な空間に配置される。
ステップ4:点群のN個のフレームの占有マップを得るために点群のN個のフレームのそれぞれをパッキングする。ここで、点群のn番目のフレーム内のm番目のグローバルマッチパッチの占有マップのものであり、点群のn番目のフレームの占有マップ内にある位置(第1の位置)が、M個のユニオンパッチ占有マップ内のm番目のユニオンパッチ占有マップのものであり、グローバル占有マップ内にある位置(第2の位置)に対応し、1≦n≦Nであり、nは整数である。
第1の位置が第2の位置に対応することは:第1の位置の座標値が第2の位置の座標値と同じであるか又は第1の位置を含む座標系における第1の位置の座標値が第2の位置を含む座標系における第2の位置の座標値と実質的に同じであるか又は第1の位置の座標値が第2の位置の座標値と異なるが、第2の位置を含む位置範囲が第1の位置を含む位置範囲を含むことを含み得る。第1の位置の座標値は、点群のn番目のフレームの占有マップ内の、点群のn番目のフレームのm番目のグローバルマッチパッチの占有マップの位置座標によって表され得る。第2の位置の座標値は、グローバル占有マップ内のm番目のユニオンパッチ占有マップの位置座標によって表され得る。第1の位置を含む位置範囲は、m番目のグローバルマッチパッチの占有マップによって占有される領域であり、第2の位置を含む位置範囲は、m番目のユニオンパッチ占有マップによって占有される領域である。
1つの例では、関連内容の説明及び上述したグローバルマッチングパッキングアルゴリズムにおける特定の実施の説明については、限定されないが、例えば出願人によって先に出願された別の特許を参照されたい。
本願の実施形態における「少なくとも1つの(種類)」という用語は1つ以上の(種類)を含む。「複数の(種類)」とは2つの(種類)又は2より多い(種類)を意味する。例えば、A、B及びCのうちの少なくとも1つは、Aのみが存在する場合、Bのみが存在する場合、Cのみが存在する場合、A及びBの両方が存在する場合、A及びCの両方が存在する場合、B及びCの両方が存在する場合並びにA、B及びCが存在する場合を含む。本願の明細書では、「/」は特に指定のない限り「又は」を意味する。例えば、A/BはA又はBを表し得る。本明細書では、「及び/又は」は関連するオブジェクトを説明するための関連関係のみを記述し、3つの関係を存在し得ることを表す。例えば、A及び/又はBは、Aのみが存在する場合、A及びBの両方が存在する場合並びにBのみが存在する場合という3つの場合を表し得る。加えて、本願の実施形態における技術的解決策の明確な説明の便宜上、本願の実施形態では、「第1」及び「第2」等の用語は、その機能及び目的が基本的に同じである同一のオブジェクト又は同様のオブジェクトを区別するために用いられる。当業者であれば、「第1」及び「第2」等の用語は数量又は実行順序を限定することを意図したものではなく、「第1」及び「第2」等の用語は明確な違いを示さないことが分かる。
アンカーアルゴリズムを用いる場合と比較して、複数の点群内でマッチ関係を有するパッチのものであり、グローバルマッチングパッキングアルゴリズムを用いることによるパッキングを通じて得られる占有マップは、パッチが位置する点群の占有マップ内の位置に対応することが理解され得る。これは、点群符号化性能を改善するのに役立つ。しかしながら、点群の占有マップのものである、グローバルマッチングパッキングアルゴリズムを用いて得られるサイズはアンカーアルゴリズムを用いて得られるサイズよりも概して大きい。これは、点群符号化性能を低下させる。これに基づいて、本願の実施形態において提供されるいくつかの実施形態の基本的な考え方は、次のとおりである。点群符号化性能の2つの側面の影響のバランスがとられるため、符号化すべき点群内にあり、点群の少なくとも2つのフレームを含むサブグループはグローバルマッチングパッキングアルゴリズムに基づいてパッキングされる場合、全体的な性能は比較的高くなる。本明細書におけるアンカーアルゴリズムは別のパッキングアルゴリズムで置き換えてもよい。
本願の一部の他の実施形態では、複数のパッキングアルゴリズムの符号化性能を比較する必要はない。その代わり、符号化すべき点群グループは、1つのパッキングアルゴリズムに基づいて直接グループ化される。パッキングアルゴリズムは、例えば、限定されないがグローバルマッチングパッキングアルゴリズムである。
以下では、本願の実施形態で提供される点群符号化方法について説明する。なお、図1に示す点群符号化システムを参照して、以下のいずれかの点群符号化方法は、点群符号化システム内のソース装置10によって行われ、より具体的にはソース装置10内のエンコーダ100によって行われ得る。
図5は、本願の一実施形態に係る点群符号化方法の概略フロー図である。この方法は以下のステップを含み得る。
S101:符号化すべき点群グループを複数のサブグループにグループ化することであって、該符号化すべき点群グループを複数のサブグループにグループ化することは、前記符号化すべき点群グループ内の点群の複数のフレームを予めグループ化して予めグループ化されたサブグループを取得することと、前記予めグループ化されたサブグループの特徴情報に基づいて、前記予めグループ化されたサブグループが前記複数のサブグループのうちの1つであると決定することと、を含み、前記特徴情報は、前記予めグループ化されたサブグループ内の点群の占有マップのサイズを表すのに用いられる。
点群の占有マップのサイズ情報は、点群の占有マップの面積、高さ、幅等であり得る。点群の占有マップのサイズ情報が占有マップの領域である例を以下の説明で用いる。本明細書では一般的な説明が提供され、以下では詳細は記載されていない。
符号化すべき点群グループは点群の複数のフレームを含み、点群の複数のフレームは一時的に連続していてもいいし、非連続であってもよい。例えば、符号化すべき点群グループは、フレームの1つ以上のグループ(group of frame、GOF)であってもよく、1つのGOFは点群の32個のフレームを含み得る。もちろん、これに限定されない。
符号化すべき点群をグループ化することにより得られたサブグループは、点群の1つ以上のフレームを含み得る。異なるサブグループに含まれる点群のフレームの数は等しくてもいいし、等しくなくてもよい。
予めグループ化するのに用いられる方法は、本願の本実施形態で限定されていない。例えば、符号化すべき点群グループ内の点群の複数のフレームは、ウインドウスライディング法又は二分法を用いることにより予めグループ化され得る。
予めグループ化されたサブグループ内の点群の占有マップのサイズはグローバルマッチングパッキングアルゴリズム又は別のパッキングアルゴリズム、例えばアンカーパッキングアルゴリズムに基づいて決定され得る。
予めグループ化されたサブグループの特徴情報は、予めグループ化されたサブグループ内の点群の占有マップのサイズを表すために直接的に又は間接的に用いられる情報であり得る。例えば、特徴情報は、以下の情報1~情報3のうちの少なくとも1つを含み得る。
情報1は、予めグループ化されたサブグループのグローバル占有マップのサイズである。任意で、予めグループ化されたサブグループのグローバル占有マップのサイズは、予めグループ化されたサブグループのグローバル占有マップ(すなわち、グローバル占有マップの面積)の高さ(height)及び幅(width)の積によって表され得る。任意で、サブグループ決定プロセスにおいて、異なる予めグループ化されたサブグループの取得されたグローバル占有マップの幅が同じである場合、予めグループ化されたサブグループのグローバル占有マップのサイズは、予めグループ化されたサブグループのグローバル占有マップの高さによって表され得る。同様に、サブグループ決定プロセスにおいて、異なる予めグループ化されたサブグループの取得されたグローバル占有マップの高さが同じである場合、予めグループ化されたサブグループのグローバル占有マップのサイズは、予めグループ化されたサブグループのグローバル占有マップの幅によって表され得る。予めグループ化されたサブグループのグローバル占有マップのサイズは、予めグループ化されたサブグループ内の点群の各フレームの占有マップの最小サイズを定義するため、予めグループ化されたサブグループ内の点群の占有マップのサイズは、予めグループ化されたサブグループのグローバル占有マップのサイズを用いて間接的に表され得る。
情報2は、予めグループ化されたサブグループ内の点群の占有マップのサイズであり、例えば、予めグループ化されたサブグループ内の点群の1つ以上のフレーム(例えば、全てのフレーム)の占有マップのサイズである。任意で、予めグループ化されたサブグループのグローバル占有マップのサイズは、予めグループ化されたサブグループの占有マップ(すなわち、占有マップの面積)の高さ及び幅の積によって表され得る。任意で、サブグループ決定プロセスにおいて、異なる点群の取得されたグローバル占有マップの幅が同じである場合、予めグループ化されたサブグループ内の点群の占有マップのサイズは、予めグループ化されたサブグループ内の点群の占有マップの高さによって表され得る。同様に、サブグループ決定プロセスにおいて、異なる点群の取得された占有マップの高さが同じである場合、予めグループ化されたサブグループ内の点群の占有マップのサイズは、予めグループ化されたサブグループ内の点群の占有マップの幅によって表され得る。情報2は、予めグループ化されたサブグループ内の点群の占有マップのサイズを表すのに直接用いられる情報である。
情報3は、予めグループ化されたサブグループのユニオンパッチ占有マップの領域である。前述の説明から、予めグループ化されたサブグループの複数のユニオンパッチ占有マップが存在し得ることが分かる。予めグループ化されたサブグループのユニオンパッチ占有マップの面積は、予めグループ化されたサブグループのユニオンパッチ占有マップの1つ以上(例えば、全て)の面積であり得る。予めグループ化されたサブグループのユニオンパッチ占有マップの面積(例えば、合計面積)は、予めグループ化されたサブグループ内の点群の占有マップの面積をある程度反映し得るため、予めグループ化されたサブグループ内の点群の占有マップのサイズは、予めグループ化されたサブグループのユニオンパッチ占有マップの面積(例えば、合計面積)によって間接的に表され得る。
S102:複数のサブグループに含まれる点群を符号化する。詳細は次のとおりである。
一部の実施では、グループ化されたサブグループを単位として用いることにより複数のサブグループに含まれる点群を別々にパッキングして、符号化すべき点群グループ内の各点群の占有マップを得る。次に、各点群の占有マップを埋めて、ビデオ符号化を行う。あるいは、点群の占有マップをガイドとして用いることにより、点群の深度マップ、点群のテクスチャマップ等が生成される。特定のプロセスについては、図2に示すエンコーダ100の動作原理の前述の説明を参照するか又は従来技術を参照されたい。ここでは、詳細について繰り返し説明しない。
一般に、1つのサブグループ内の点群は同じパッキングアルゴリズムを用いることによりパッキングされる。異なるサブグループに点群をパッキングするのに用いられるパッキングアルゴリズムは同じであってもいいし、異なっていてもよい。本願の本実施形態ではこれに限定されない。任意で、予めグループ化されたサブグループの特徴情報がグローバルマッチングパッキングアルゴリズムに基づいて取得され、1つのサブグループが点群の複数のフレームを含む場合、サブグループ内の点群はグローバルマッチングパッキングアルゴリズムに基づいてパッキングされ得る。
なお、1つ以上のサブグループ内の点群の占有マップが、符号化すべき点群グループをグループ化するプロセスで取得され、S102が行われる場合、1つのサブグループ又は複数のサブグループ内の点群に対してパッキングステップが行われない場合がある。
本願の本実施形態で提供される点群符号化方法では、予めグループ化されたサブグループの特徴情報を参照して符号化すべき点群がグループ化され、特徴情報は、予めグループ化されたサブグループ内の点群の占有マップのサイズを表すのに用いられる。点群の占有マップのサイズは、点群の深度マップのサイズ及びテクスチャマップのサイズを決定し、点群の占有マップ、深度マップ及びテクスチャマップのサイズは、点群符号化プロセスにおけるビデオ符号化効率に影響を与える主要な要因である。したがって、符号化すべき点群グループがグループ化されるサブグループは、予めグループ化されたサブグループ内の点群の占有マップのサイズを参照して決定される。これはビデオ符号化効率の向上を助け、それにより点群符号化効率が改善される。
任意で、S101は以下のステップS101-1~S101-2を含み得る。
S101-1:点群のj番目のフレームを開始点として用いることにより、符号化すべき点群グループにグループ化されていない点群をi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得する。点群のj番目のフレームは、グループ化されていない点群内の点群の第1のフレームであり、i≧1であり、iは整数であり、j≧1であり、jは整数であり、前記i番目の予めグループ化されたサブグループは、点群のj番目のフレームから始まる点群の1つ以上のフレームを含む。
S101-2:i番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループがサブグループであると決定する。
本願の本実施形態では、符号化すべき点群グループに含まれるサブグループを決定する場合に、符号化すべき点群グループ内の点群の順序に基づいて次のサブグループを決定する技術的解決策がサポートされることがこの任意の方法から分かる。サブグループ決定プロセスにおいて、予めグループ化することは、通常、1回以上行う必要があり(例えば、ウィンドウを1回以上スライドするか又は二分法を1回以上行う)、予めグループ化を行う毎に1つの予めグループ化されたサブグループが決定され得る。
S101-1は、S101における「符号化すべき点群グループ内の点群の複数のフレームを予めグループ化して予めグループ化されたサブグループを取得すること」の特定の実施であり、S101-2は、S101における「予めグループ化されたサブグループの特徴情報に基づいて、予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定すること」の特定の実施である。
以下では、読者の理解を容易にするために、ウィンドウをスライドさせることにより予めグループ化を実施するプロセスにおけるいくつかの条件について簡潔に説明する。
ウィンドウを一回スライドさせると、点群の1つ以上のフレームを周回できる。本願の本実施形態では、「サブグループ決定プロセスにおいて、i=1の場合、i回目にウィンドウをスライドさせることにより周回される点群のフレームの数は、i回目+1にウィンドウをスライドさせるのに用いられるステップサイズと等しいか又はi≧2の場合、i回目にウィンドウをスライドさせることにより周回される点群のフレームの数は、i回目にウィンドウをスライドさせるのに用いられるステップサイズと等しい」例を用いることにより説明が全て提供される。、本願の本実施形態では、「i≧1の場合、i回目にウィンドウをスライドさせることにより周回される点群のフレームの数は、i回目にウィンドウをスライドさせるのに用いられるステップサイズと等しい」場合は除外されない。この場合、当業者であれば、下記の条件の説明に基づき且つ創造的努力によらず、合理的に推論してこの件に適用可能な条件を得るだろう。
異なる回にウィンドウをスライドさせるのに用いられるステップサイズは等しくてもいいし、等しくなくてもよい。
i回目にウィンドウをスライドさせることは、符号化すべき点群グループにグループ化されていない点群内の点群の第1のフレームからiステップサイズスライドさせるプロセスであり、iステップサイズにおけるt番目のステップサイズは、t回目にウィンドウをスライドさせるのに用いられるステップサイズであり、1≦t≦iであり、tは整数である。一般に、i≧2の場合に、i回目にウィンドウをスライドさせることは、符号化すべき点群グループ内の周回された点群の最後のフレームから始まる1つのステップサイズをスライドさせることとみなしてもよく、ステップサイズは、i回目にウィンドウをスライドさせるのに用いられるステップサイズであることが理解され得る。
i番目の予めグループ化されたサブグループは、1回目からi回目にウィンドウをスライドさせることにより周回された点群を含むセットである。一般に、i番目の予めグループ化されたサブグループに含まれる点群のフレームの数は、1回目からi回目にウィンドウをスライドさせるのに用いられるステップサイズの合計+1に等しい。
図6は、本願の一実施形態に係る、スライディングウィンドウ、ステップサイズ及び予めグループ化されたサブグループ間の対応の概略図である。図6において、符号化すべき点群グループは点群1~32を含む。図6の矩形のボックスは点群のフレームを表し、矩形のボックス内の数字は点群の数を表す。毎回ウィンドウをスライドさせるのに用いられるステップサイズは3である。すなわち、ウィンドウを一回スライドすることにより、点群の3つのフレームを周回することができる。加えて、グループ化されたサブグループはサブグループ1及びサブグループ2であり、サブグループ1は点群1~4を含むセットであり、サブグループ2は点群5を含むセットである。これに基づき、サブグループ3を決定するプロセスでは、点群6を開始点として用いることにより1回目にウィンドウをスライドした後で周回される点群は点群6~9である。この場合、得られた第1の予めグループ化されたサブグループは点群6~9を含むセットである。点群6を開始点として二回目にウィンドウをスライドさせることは、1回目にウィンドウをスライドさせることで周回された点群(すなわち、点群9)の最後のフレームから1つのステップサイズスライドすることである。したがって、2回目にウィンドウがスライドされた後で周回される点群は、点群10~12である。この場合、得られた第2の予めグループ化されたサブグループは、点群6~12を含むセットである。
異なるサブグループ決定プロセスでは、iの初期値は常に1である。別段記載がない限り、本願の本実施形態で説明したi回目にウィンドウをスライドさせることは、サブグループ決定プロセスでi回目にウィンドウをスライドさせることである。同様に、i番目の予めグループ化されたサブグループは、サブグループ決定プロセスにおけるi番目の予めグループ化されたサブグループである。本明細書では一般的な説明を提供し、詳細については以下に記載していない。
以下では特定の例を用いて、本願の本実施形態で提供される、ウィンドウスライディング法を用いることにより予めグループ化することが実施される場合に、符号化すべき点群グループ内のサブグループを決定するための方法を説明する。詳細については、以下の実施形態1又は実施形態2を参照されたい。
実施形態1
図7は、本願の一実施形態に係るサブグループ決定方法の概略フロー図である。図7に示す方法は以下のステップを含む。
S201:点群のj番目のフレームを開始点として用いることにより、1回目にウィンドウをスライドさせて第1の予めグループ化されたサブグループを取得する。具体的には、1回目にウィンドウをスライドさせることにより周回される点群を含むセットが第1の予めグループ化されたグループとして用いられ、点群のj番目のフレームは、符号化すべき点群グループにグループ化されていない点群内の点群の第1のフレームである。
1≦j≦Jであり、Jは符号化すべき点群グループに含まれる点群のフレームの数である。符号化すべき点群グループの第1のサブグループを決定するのに図7に示す方法が用いられる場合、jは1に等しい。符号化すべき点群グループの第2のサブグループ又は第2のサブグループの後の任意のサブグループを決定するのに図7に示す方法が用いられる場合、jは、第1から(i-1)番目のサブグループに含まれる点群のフレームの数の合計+1と等しい。
S202:第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たしているかどうかを判定する。
第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合はS203が行われる。第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合はS204が行われる。
S203:第1の予めグループ化されたサブグループ内の点群の第1のフレームを第1のサブグループとして用いる。
S203が行われた後、プロセスが終了する。
例えば、図6を参照して、サブグループ2は、サブグループ2を決定するプロセスにおいて、得られた第1の予めグループ化されたサブグループ(すなわち、点群5~8を含むセット)が所定の条件を満たさない、点群の1つのフレームを含むセットであることが分かる。
S204:(i+1)回目にウィンドウをスライドして(i+1)番目の予めグループ化されたサブグループを取得する。具体的には、1回目から(i+1)回目にウィンドウをスライドさせることにより周回された点群を含むセットが(i+1)番目の予めグループ化されたグループとして用いられる。
i≧1であり、iは整数である。iの初期値は1である。
S205:(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすかどうかを判定する。
(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合はS206が行われる。(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合はS207が行われる。
S206:i+2をi+1に割り当てる。S206が行われた後、S204に戻って行われる。
S207:i番目の予めグループ化されたサブグループがサブグループであると決定する。
なお、本実施形態におけるS204を、i回目にウィンドウをスライドしてi番目の予めグループ化されたサブグループを取得することに置き換えてもよい。i≧2であり、iは整数である。iの初期値は2である。この場合、S205は、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすかどうか判定することに置き換えてもよく、S206は、i+1をiに割り当てることに置き換えてもよく、S207は、(i-1)番目の予めグループ化されたサブグループがサブグループであることを決定することに置き換えてもよい。
例えば、図6を参照して、サブグループ3を決定するプロセスにおいて、点群のj番目のフレームは具体的には点群6である。第2の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、3回目にウィンドウをスライドして第3の予めグループ化されたサブグループが得られる。第3の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、第2の予めグループ化されたサブグループ(すなわち、点群6~12を含むセット)がサブグループ3として用いられる。
別の例として、図6を参照して、各回にウィンドウをスライドさせるのに用いられるステップサイズが3であると仮定する。この場合、サブグループ1が点群の4つのフレームを含むセットであることから、サブグループ1を決定するプロセスにおいて、得られた第1の予めグループ化されたサブグループ(すなわち、点群1~4を含むセット)が所定の条件を満たし、得られた第2の予めグループ化されたサブグループ(すなわち、点群1~7を含むセット)は所定の条件を満たさないことが分かる。
実施形態1では、異なる回にウィンドウをスライドさせるのに用いられるステップサイズは等しくても等しくなくてもよい。
任意で、i1回目にウィンドウをスライドさせるのに用いられるステップサイズは、i2回目にウィンドウをスライドさせるのに用いられるステップサイズ以上であり、1≦i1<i2≦iであり、i1及びi2の双方は整数である。すなわち、本願のこの実施形態では、サブグループ決定プロセスにおいて後でウィンドウをスライドさせるために用いられるステップサイズは、先にウィンドウをスライドさせるのに用いられるステップサイズ以上である技術的解決策がサポートされる。詳細は以下のとおりである。
一部の実施では、各回にウィンドウをスライドさせるために用いられるステップサイズは同じである。すなわち、ウィンドウは固定のステップサイズでスライドされる。任意で、固定のステップサイズは1であり得る。この場合、符号化すべき点群グループが粒度として点群に基づいてグループ化される場合、グループ化の結果をより正確なものにできる。任意で、固定のステップサイズは代替的に1より大きい値であり得る。符号化すべき点群グループ、例えばGOF内の点群の複数の連続フレームの特徴類似性は比較的高いため、比較的大きなステップサイズは、グループ化プロセスにおける計算の複雑性を低減できる。
一部の他の実施では、ウィンドウを少なくとも2回スライドさせるために用いられるステップサイズは等しくなく、後でウィンドウをスライドさせるために用いられるステップサイズは、先にウィンドウをスライドさせるために用いられるステップサイズ以上である。すなわち、ウィンドウは非固定のステップサイズでスライドされる。このように、計算の複雑性と、グループ化プロセスにおけるグループ化の結果の精度とのバランスを支援するために適切なステップサイズが選択される。これは、全体的なグループ化パフォーマンスの改善に役立ち、エンコード性能の改善にさらに役立つ。任意で、(i+1)回目にウィンドウをスライドさせるのに用いられるステップサイズN[i+1]は式N[i+1]=N[i]×cにしたがって得られる。N[i]はi回目にウィンドウをスライドさせるのに用いられるステップサイズであり、cはi番目の予めグループ化されたサブグループ内の大型点群のフレームの数に基づいて決定される。すなわち、2回連続でウィンドウをスライドさせるプロセスにおいて、先にウィンドウをスライドさせるために用いられるステップサイズは、後でウィンドウをスライドさせるために用いられるステップサイズを決定するために用いられる。さらに、任意で、c=(a-b)/aであり、aは第1の所定の数であり、bはi番目の予めグループ化されたサブグループ内の大型点群のフレームの数である。まぎれもなく、これは、本願の本実施形態に限定されない。
特定の実施では、異なる回にウィンドウをスライドさせるために用いられるステップサイズが固定であっても、ステップサイズが固定でない場合にステップサイズを決定するための方法等が予め定義されていてもよいことが理解されよう。
符号化すべき点群グループがグループ化される複数のサブグループを得るために、S201~S207が複数回行われる。S201~S207は、符号化すべき点群グループ内のサブグループを決定するための一般的な方法と考えられ得る。実際の実施では、以下の特殊なケースが存在し得る。
ケース1:S201~S207の説明から、i番目の予めグループ化されたサブグループの特徴情報が条件を満たす場合、(i+1)回目にウィンドウをスライドさせる必要があることが分かる。しかしながら、この場合、符号化すべき点群グループ内に取り囲まれていない点群が残っていない場合があり得る。すなわち、i番目の予めグループ化されたサブグループに含まれる点群の最後のフレームは、符号化すべき点群グループ内の点群の最後のフレームである。この場合、i番目の予めグループ化されたサブグループは、符号化すべき点群グループのうちの最後のサブグループであると決定され得る。
例えば、図8Aを参照して、符号化すべき点群グループは点群1~32を含み、グループ化されたサブグループはサブグループ1~6であると仮定する。この場合、サブグループ7を決定するプロセスにおいて、第3の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、S201~S207の説明に基づいて第4の予めグループ化されたサブグループを取得する必要がある。この場合、符号化すべき点群グループ内には取り囲まれていない点群が残っていないため、第3の予めグループ化されたサブグループ(すなわち、点群23~32を含むセット)がサブグループ7として用いられ得る。
ケース2:(i+1)回目にウィンドウをスライドさせるプロセスにおいて、(i+1)回目にウィンドウをスライドさせるのに用いられるステップサイズは、符号化すべき点群グループ内で取り囲まれていない点群のフレームの数よりも大きい場合がある。この場合、i番目の予めグループ化されたサブグループに含まれる点群と、符号化すべき点群グループ内で取り囲まれていない点群が、(i+1)番目の予めグループ化されたサブグループとして用いられ得る。
例えば、図8Bを参照して、符号化すべき点群グループは点群1~32を含み、グループ化されたサブグループはサブグループ1~6であると仮定する。この場合、サブグループ7を決定するプロセスにおいて、第3の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、S201~S207の説明に基づいて第4の予めグループ化されたサブグループを取得する必要がある。この場合、4回目にウィンドウをスライドするのに用いられるステップサイズ(すなわち、3)は、符号化すべき点群フループ内で取り囲まれていない点群(すなわち、点群31~32)のフレームの数(すなわち、2)より大きいため、点群21~33が第4の予めグループ化されたサブグループとして用いられ得る。
実施形態2
実施例形態2と実施形態1との違いは、i≧2の場合に、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、(i+1)番目の予めグループ化されたグループを再度得るためにより小さいステップサイズが用いられる点である。この実施形態は、(i+1)番目の予めグループ化されたサブグループが得られたときに用いられるステップサイズが1よりも大きいシナリオに適用される。本実施形態で提供される方法のフロー図は図9A及び図9Bに示され得る。具体的には、実施形態1におけるS207は下記のステップS207A~S207Cで置き換えられ得る。
S207A:第2のステップサイズを用いることにより(i+1)番目の予めグループ化されたサブグループを再取得する。第2のステップサイズは第1のステップサイズよりも小さく、第1のステップサイズは(i+1)番目の予めグループ化されたサブグループが得られるときに用いられるステップサイズである。
(i+1)番目の予めグループ化されたサブグループを再取得するプロセスは、i番目の予めグループ化されたサブグループ内の点群の最後のフレームに戻り(又はロールバックし)、最後のフレームを開始点として用いることにより第2のステップサイズをスライドさせるプロセスとして理解され得る。
S207B:第2のステップサイズを用いることにより再取得された(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、第3のステップサイズを用いることにより(i+1)番目の予めグループ化されたサブグループを再取得する。第3のステップサイズは第2のステップサイズよりも小さい。すなわち、各回に再取得されるi番目の予めグループ化されたサブグループのステップサイズは、先に再取得されたi番目の予めグループ化されたサブグループのステップサイズよりも小さい。同様に、(i+1)番目の予めグループ化されたサブグループを再取得した回数が所定の回数に達するか又は最新の再取得した(i+1)番目の予めグループ化されたサブグループのステップサイズが所定のステップサイズ(例えば、1)以下である場合に、最新の再取得した(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合に、i番目の予めグループ化されたサブグループがあると決定される。
例えば、図10を参照して、サブグループ3を決定するプロセスにおいて、第1の予めグループ化されたサブグループ(すなわち、点群9~15を含むセット)の特徴情報は所定の条件を満たし、第2の予めグループ化されたサブグループ(すなわち、点群9~21を含むセット)の特徴情報は所定の条件を満たさず、第1のステップサイズは6であると仮定する。この場合、点群9~pを含む予めグループ化されたサブグループの特徴情報は条件を満たし、15<p<21であり、pは整数である。したがって、第2のステップサイズ(例えば、3)を用いることにより第2の予めグループ化されたサブグループ(すなわち、点群9~18を含むセット)が再取得される。再取得された第2の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、点群9~qを含むサブグループの特徴情報は所定の条件を満たし得る(15<q<18であり、qは整数である)。したがって、第3のステップサイズ(例えば、1)を用いるすることにより、第2の予めグループ化されたサブグループ(すなわち、点群9~16を含むセット)が再取得される。この再取得された第2の予めグループ化サブグループの特徴情報は所定の条件を満たさず、第2の予めグループ化サブグループを再取得した回数が所定の回数に達するか又は最新の再取得された第2の予めグループ化されたサブグループのステップサイズが所定のステップサイズ以下であると仮定する。この場合、第1の予めグループ化されたサブグループ(すなわち、点群9~15を含むセット)がサブグループ3として用いられる。
なお、所定の回数で再取得された(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、以下のステップS207Cが行われ得る。
S207C:再取得された(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合に、再取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に得られた(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数以下である場合、再取得された(i+1)番目の予めグループ化されたサブグループがサブグループであると決定される。
例えば、図11Aを参照して、サブグループ3を決定するプロセスにおいて、再取得された第2の予めグループ化されたサブグループ(すなわち、点群9~18を含むセット)の特徴情報が所定の条件を満たすと仮定する。この場合、点群9~dを含むサブグループの特徴情報は所定の条件を満たし得る(18<d<21であり、dは整数である)。この場合、第2の所定の数は3であると仮定する。再取得された第2の予めグループ化サブグループに含まれる点群のフレームの数と、最初に得られた第2の予めグループ化サブグループに含まれる点群のフレームの数との差(すなわち、3)は第2の所定の数と等しいため、再取得された第2の予めグループ化されたサブグループ(すなわち、点群9~18を含むセット)がサブグループとして用いられる。
再取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に取得した(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数よりも大きい場合、第4のステップサイズを用いることにより、(i+2)番目の予めグループ化されたサブグループが得られ、第2のステップサイズと第4のステップサイズの合計は第1のステップサイズより小さい。(i+2)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、第5のステップサイズを用いることにより(i+3)番目の予めグループ化されたサブグループが得られ、第2のステップサイズ、第4のステップサイズ及び第5のステップサイズの合計は第1のステップサイズよりも小さい。すなわち、(i+k)番目の予めグループ化されたサブグループを得るために用いられるステップサイズ、(i+k-1)番目の予めグループ化されたサブグループを得るために用いられるステップサイズ、(i+k-2)番目の予めグループ化されたサブグループを得るために用いられるステップサイズ・・・(i+2)番目の予めグループ化されたサブグループを得るために用いられるステップサイズ及び(i+1)番目の予めグループ化されたサブグループを再取得するのに用いられるステップサイズの合計は、最初に(i+1)番目の予めグループ化されたサブグループを得るために用いられるステップサイズよりも小さい。同様に、得られた(i+k)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に得られた(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数以下であり、(i+k)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、(i+k)番目の予めグループ化されたサブグループがサブグループであると決定され、k≧2であり、kは整数である。
例えば、図11Bを参照して、サブグループ3を決定するプロセスにおいて、再取得した第2の予めグループ化されたサブグループ(すなわち、点群9~18を含むセット)の特徴情報が所定の条件を満たすと仮定する。この場合、点群9~dを含むサブグループの特徴情報は所定の条件を満たし得る(18<d<21であり、dは整数である)。この場合、第2の所定の数を1と仮定する。第3の予めグループ化されたサブグループに含まれる点群のフレーム数と、最初に得られた第2の予めグループ化されたサブグループに含まれる点群のフレーム数との差(すなわち、1)は第2の所定の数と等しいため、第3の予めグループ化されたサブグループ(すなわち、点群9~21を含むセット)がサブグループとして用いられる。
(i+k)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、(i+k)番目の予めグループ化されたサブグループが再取得されることが理解されよう。後続のステップについては、S207B及び/又はS207Cを参照されたい。
なお、矛盾が生じない場合には、実施形態1の関連内容の説明は実施形態2に適用され得ることが分かる。例えば、実施形態1のケース1及びケース2での処理方法は実施形態2に適用され得る。別の例として、実施形態1におけるステップサイズ決定方法は実施形態2に適用され得る。
本実施形態で提供されるサブグループ決定方法は、スライディングウィンドウのステップサイズが1より大きい場合に、符号化すべき点群グループ内の可能な限り多くの点群が所定の条件を満たすサブグループを形成できるようにするのに役立つ。1つのサブグループが点群の少なくとも2つのフレームを含む場合、点群内にマッチング関係を有するパッチのものであり、グローバルマッチングパッキングアルゴリズムを用いて得られる占有マップは、パッチが位置する点群の占有マップ内の位置に対応する。これは、符号化性能を改善できる。したがって、本実施形態で提供される解決策によれば、サブグループ内の点群がグローバルマッチングパッキングアルゴリズムを用いてパッキングされる場合に、可能な限り多くの点群が所定の条件を満たすサブグループを形成することで符号化効率を改善させる。
以下では、読者の理解を容易にするために、二分法を用いて予めグループ化するプロセスにおけるいくつかの用語について簡単に説明する。
サブグループ分割点とは、2つの隣接するサブグループの分割点を意味する。符号化すべき点群グループをグループ化することの本質は、符号化すべき点群内のサブグループ分割点を探すことであることが理解されよう。
二分法の中間点は、二分法の対象とされるシーケンス内の複数のオブジェクトのうちの中間オブジェクトである。例えば、シーケンスに含まれるオブジェクトの数はそれぞれx~yであり、1≦x<yであり、x及びyの双方は整数である。この場合、二分法の中間点は、オブジェクト
又はオブジェクト
である。
は切り下げ、
は切り上げを表す。現在の二分法の対象のオブジェクト内の中間点よりも前のオブジェクトは、現行の二分法を用いて得られたオブジェクトの前半と呼ばれ、現在の二分法の対象のオブジェクト内の中間点よりも後のオブジェクトは、現行の二分法を用いて得られたオブジェクトの広範と呼ばれる。
点群のj番目のフレームを開始点として用いることにより、符号化すべき点群グループにグループ化されていない点群に対してi回目に二分法を行うことによりi番目の予めグループ化されたサブグループが取得される。例えば、二分法を用いることにより得られた点群の前半は、i回目の予めグループ化されたサブグループとして用いられ得る。これは、本願の本実施形態における説明のための例として用いられる。もちろん、これは本願の本実施形態に限定されない。点群のj番目のフレームは、符号化すべき点群グループにグループ化されていない点群内の点群の最初のフレームである。
i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、(i+1)番目の予めグループ化されたサブグループは、i番目の予めグループ化されたサブグループと、(i+1)回目に二分法を行うことにより得られた点群の前半とを含むセットである。
i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、(i+1)番目の予めグループ化されたサブグループは、i番目の予めグループ化されたサブグループ内の点群の前半を含むセットである。
図12(a)及び図12(b)は、本願の実施形態に係る二分群と予めグループ化されたサブグループとの間の関係の概略図である。符号化すべき点群グループが点群1~32を含む例を用いて図12(a)及び図12(b)を説明する。具体的には、点群1~32に対して二分法を行って第1の予めグループ化されたサブグループ(すなわち、点群1~16を含むセット)を得る。第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、図12(a)に示すように、点群16~32に対して二分法を行って第2の予めグループ化されたサブグループ(すなわち、点群1~24を含むセット)を得る。第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、図12(b)に示すように、点群1~16に対して二分法を行って第2の予めグループ化されたサブグループ(すなわち、点群1~7を含むセット)を得る。
以下では、特定の例を用いて、本願の本実施形態で提供される、二分法を用いることにより予めグループ化することが実施される場合の符号化すべき点群グループ内のサブグループを決定するための方法を説明する。詳細については、以下の実施形態3又は実施形態4を参照されたい。
実施形態3
図13は、本願の一実施形態に係るサブグループ決定方法の概略フロー図である。図13に示す方法は以下のステップを含む。
S301:j番目のフレームを開始点として用いることにより1回目に二分法を行って第1の予めグループ化されたサブグループを取得する。1≦j≦Jであり、Jは符号化すべき点群グループに含まれる点群のフレームの数である。
S302:第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たすかどうか判定する。
第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、特定すべき分割点は現在の二分法を用いることにより得られた点群の後半にあることを示し、S303が行われる。
第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合は、特定すべき分割点は現在の二分法を用いることにより得られた点群の前半にあることを示し、S304が行われる。
S303:2回目の二分法を行って第2の予めグループ化されたサブグループを取得する。第2の予めグループ化されたサブグループが所定の条件を満たす場合、3回目の2分法が行われる。すなわち、現在の二分法を用いることにより得られた予めグループ化されたサブグループが所定の条件を満たす場合、次回の二分法が行われる。この規則に従って二分法が行われ、その後の実施は以下のようになり得る。
実施1:直近に行われた二分法により得られた予めグループ化されたサブグループが二分法を続けることができなくなるまで所定の条件を満たす場合、グループ化されていない符号化すべき点群がサブグループとして用いられる。
実施2:(i+1)回目に二分法を行うことにより得られた(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、i回目に二分法を行うことにより得られたi番目の予めグループ化サブグループがサブグループとして用いられ、i≧1であり、iは整数である。
S304:2回目の二分法を行って第2の予めグループ化されたサブグループを取得する。第2の予めグループ化されたサブグループが所定の条件を満たさない場合、3回目の二分法が行われる。すなわち、現在の二分法を用いることにより得られた予めグループ化されたサブグループが所定の条件を満たさない場合、次回の二分法が行われる。この規則に従って二分法が行われ、その後の実施は以下のようになり得る。
実施1:直近に行われた二分法により得られた予めグループ化されたサブグループが二分法を続けることができなくなるまで所定の条件を依然として満たさない場合、グループ化されていない符号化すべき点群の第1のフレームがサブグループとして用いられる。
実施2:直近に行われた二分法により得られた予めグループ化されたサブグループが二分法を続けることができなくなるまで所定の条件を満たす場合、直近で得られた予めグループ化されたサブグループがサブグループとして用いられる。
実施3:(i+1)回目の二分法を行って得られた(i+1)番目の予めグループ化サブグループの特徴情報が所定の条件を満たす場合、(i+2)回目の二分法が行われ、(i+2)回目の二分法を行って得られた(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、(i+3)回目の二分法が行われる。即ち、所定の条件を今回満たした場合、次回の二分法が行われる。この規則に従って二分法が行われる。直近に行われた二分法により得られた予めグループ化されたサブグループが二分法を続けることができなくなるまで所定の条件を依然として満たす場合、直近で得られた予めグループ化されたサブグループがサブグループとして用いられる。所定の回に二分法を行うことにより得られた予めグループ化されたサブグループが所定の条件を満たさない場合、前回二分法を行うことにより得られた予めグループ化されたサブグループがサブグループとして用いられる。
本実施形態で提供されるサブグループ決定方法は、符号化すべき点群内の可能な限り多くの点群が所定の条件を満たすサブグループを形成できるようにするのに役立つ。このように、サブグループ内の点群がグローバルマッチングパッキングアルゴリズムを用いることによりパッキングされると、符号化効率が改善される。
実施形態4
図14は、本願の一実施形態に係るサブグループ決定方法の概略フロー図である。図14に示す方法は下記のステップを含む。
S401:j番目のフレームを開始点として用いることにより1回目の二分法を行って第1の予めグループ化されたサブグループを取得し、1≦j≦Jであり、Jは符号化すべき点群グループに含まれる点群のフレームの数である。
S402:第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たすかどうか判定する。
第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合はS403が行われる。第1の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合はS404が行われる。
S403:第1の予めグループ化されたサブグループをサブグループとして用いる。
S404:2回目の二分法を行って第2の予めグループ化されたサブグループを取得する。第2の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合、3回目の二分法を行って第3の予めグループ化されたサブグループを取得する。すなわち、現在の二分法を用いることにより得られた予めグループ化されたサブグループが所定の条件を満たさない場合、次回の二分法が行われ、この規則に従って二分法が行われ、その後の実施は以下のようになり得る。
実施1:直近に行われた二分法により得られた予めグループ化されたサブグループが二分法を続けることができなくなるまで所定の条件を依然として満たさない場合、グループ化されていない符号化すべき点群の点群の第1のフレームがサブグループとして用いられる。
実施2:(i+1)回目に二分法を行うことにより得られた(i+1)番目の予めグループ化されたサブグループが所定の条件を満たす場合、(i+1)番目の予めグループ化サブグループがサブグループとして用いられる。i≧1であり、iは整数である。
本実施形態で提供されるサブグループ決定方法によれば、複数回二分法を行うことにより得られた複数の予めグループ化されたサブグループうちの所定の条件を満たす第1の予めグループ化されたサブグループが、サブグループとして用いられる。ウィンドウスライディング法を用いることにとよる予めグループ化する方法とは異なって、二分法を用いることにより予めグループ化することを通じて得られた予めグループ化されたサブグループが所定の条件を満たす場合、予めグループ化されたサブグループは既に比較的大量の点群を含んでいると考えられる。したがって、グローバルマッチングパッキングアルゴリズムを用いることによりサブグループ内の点群がパッキングされると、符号化効率が改善される。
なお、実施形態3及び実施形態4に記載の「二分法を続けることができない」とは、二分法の対象なるオブジェクト(具体的には点群)の数が1の場合、二分法を行うことができないか又は二分法を行った回数が所定の閾値に達した場合、二分法を続けることができないことを含み得る。二分法の対象なるオブジェクトの数が1の場合、二分法を行うことができないことは、二分法の対象なるオブジェクト(具体的には点群)の数が所定の閾値以下の場合、二分法を行うことができないことまで拡大され得る。
なお、実施形態1~実施形態4で説明したいずれかの予めグループ化されたサブグループが所定の条件を満たすかどうかについては以下の説明を参照されたい。i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合に、i番目の予めグループ化されたサブグループが複数のサブグループの1つであると決定される例は以下の説明のために用いられる。加えて、予めグループ化されたサブグループが所定の条件を満たすかどうかの以下の説明に関与する「予めグループ化されたサブグループ」は、例えば、ウインドウスライディング法又は二分法を用いることによって得ることが理解されよう。
任意で、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合に、i番目の予めグループ化されたサブグループが複数のサブグループの1つであると決定されることは、以下の方法のうちの少なくとも1つで実施され得る。
方法1:i番目の予めグループ化されたサブグループの特徴情報がi番目の予めグループ化されたサブグループのグローバル占有マップのサイズを含み、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズが第1の閾値以下であり、(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズが第1の閾値よりも大きい場合、i番目の予めグループ化されたサブグループはサブグループであると決定される。
グローバル占有マップは、1つ以上のユニオンパッチ占有マップをパッキングすることによって得られると考えられ、ユニオンパッチ占有マップは、予めグループ化されたサブグループ内のグローバルマッチパッチのグループの集合である。したがて、予めグループ化されたサブグループ内の点群のフレームの数が増加するにつれて、グローバルマッチパッチのグループ内のパッチの数が増加し、グローバルマッチパッチのグループに対応するユニオンパッチ占有マップの面積が増加する。その結果、グローバル占有マップのサイズが増加する。したがって、このアプローチが提案される。このアプローチに基づいて、サブグループのグローバル占有マップは第1の閾値内で制限される。これは、サブグループ内の点群の占有マップのサイズを間接的に反映し、それにより符号化効率の改善に役立ちうる。
グローバル占有マップのサイズを表すために異なるパラメータが用いられ得る場合、第1の閾値の意味が異なることが理解されよう。例えば、グローバル占有マップのサイズがグローバル占有マップの高さ及び幅の積を用いることによって表される場合、第1の閾値は、サブグループのグローバル占有マップの面積の最大許容値を表す。別の例として、グローバル占有マップのサイズがグローバル占有マップの高さを用いて表される場合、第1の閾値は、サブグループのグローバル占有マップの高さの最大許容値を表す。
1つの実施では、第1の閾値は所定の値、例えば経験値である。例えば、第1の閾値がサブグループのグローバル占有率マップの高さの最大許容値を表す場合、第1の閾値は1280ピクセルであり得る。
別の実施では、第1の閾値は候補パッキングアルゴリズムに基づいて得られた、符号化すべき点群グループ内の点群(例えば、各点群)の占有マップの最大サイズに基づいて決定される。候補パッキングアルゴリズムは、グローバルマッチングパッキングアルゴリズムとは別のパッキングアルゴリズム、例えばアンカーパッキングアルゴリズムであり得る。例えば、第1の閾値はH×w1である。Hは、アンカーパッキングアルゴリズム等の候補パッキングアルゴリズムに基づいて得られる、符号化すべき点群グループ内の点群の占有マップの高さの最大値であり、w1は定数である。w1は、ビデオ符号化効率に対するグローバルマッチングパッキングアルゴリズム及び候補パッキングアルゴリズムの影響に基づいて決定され得る。任意で、w1∈(0.5、1.5)である。もちろん、これに限定されるものではない。
方法2:i番目の予めグループ化されたサブグループの特徴情報がi番目の予めグループ化されたサブグループ内の点群の占有マップのサイズを含む場合、以下の方法2-1又方法2-2が行われる。
方法2-1:i番目の予めグループ化されたサブグループ内の大型点群のフレームの数が第1の所定の数以下であり、(i+1)番目の予めグループ化されたサブグループ内の大型点群のフレームの数が第1の所定の数よりも多い場合、i番目の予めグループ化サブグループはサブグループであると決定され、大型点群は占有マップサイズが第2の閾値以上の点群である。本明細書では、占有マップは、任意のパッキングアルゴリズムに基づいて点群をパッキングすることによって得られる点群のフレームの占有マップであり得る。
第1の所定の数は所定の値、例えば所定の経験値、例えば4であり得る。第1の所定の数が1の場合、方法2-1は以下のように置き換えられ得る。i番目の予めグループ化されたサブグループが大型点群を含まず、(i+1)番目の予めグループ化されたサブグループが大型点群を含む場合、i番目の予めグループ化されたサブグループがサブグループであると決定される。
点群の占有マップのサイズを表すために異なるパラメータが用いられ得る場合、第2の閾値の意味が異なることが理解されよう。例えば、点群の占有マップのサイズが点群の占有マップの高さ及び幅の積を用いることによって表される場合、第2の閾値は、サブグループ内の点群の占有マップの面積の最大許容値を表す。別の例として、点群の占有マップのサイズが点群の占有マップの高さを用いて表される場合、第2の閾値は、サブグループ内の点群の占有マップの高さの最大許容値を表す。
一実施では、第2の閾値は所定の値、例えば所定の経験値である。例えば、点群の占有マップのサイズが点群の占有マップの高さ及び幅の積を用いることによって表される場合、第2の閾値は1280ピクセルであり得る。
別の実施では、大型点群は具体的にはグローバルマッチングパッキングアルゴリズムに基づいて得られた占有マップサイズが第2の閾値以上の点群である。
この場合、任意で、第2の閾値は、候補パッキングアルゴリズムに基づいて得られた、符号化すべき点群グループ内の点群の占有マップの最大サイズに基づいて決定され得る。候補パッキングアルゴリズムは、グローバルマッチングパッキングアルゴリズム以外の別のパッキングアルゴリズム、例えばアンカーパッキングアルゴリズムである。例えば、NHi,u≧Hmax×w2の場合、i番目の予めグループ化されたサブグループ内の点群のu番目のフレームは大型点群であると考えられ、u≧1であり、uは整数である。大型の点群であると考えられる。Hi,uは、グローバルマッピングアルゴリズムに基づいて得られた、i番目の予めグループ化されたサブグループ内の点群のu番目のフレームの占有マップの高さであり、Hmaxは、アンカーパッキングアルゴリズム等の候補パッキングアルゴリズムに基づいて得られた、符号化すべき点群グループ内の点群の占有マップの高さの最大値であり、w2は定数である。任意で、w2∈(0.5、1.5)である。もちろん、これに限定されるものではない。点群のフレームの占有マップのサイズは、点群のフレームが位置するサブグループのグローバル占有マップのサイズ以上であるため、さらに任意でw1<w2である。例えば、w1はw2よりもわずかに小さい。
任意で、第2の閾値は、候補パッキングアルゴリズムに基づいて得られた、現在の点群の占有マップのサイズに基づいて決定され得る。候補パッキングアルゴリズムは、グローバルマッチングパッキングアルゴリズム以外の別のパッキングアルゴリズム、例えばアンカーパッキングアルゴリズムである。例えば、NHi,u≧Hi,u×w3である。Hi,uは占有マップのグローバルマッピングアルゴリズムに基づいて得られた、i番目の予めグループ化されたサブグループ内の点群のu番目のフレームの占有マップの高さであり、Hi,uは、アンカーパッキングアルゴリズム等の候補パッキングアルゴリズムに基づいて得られたi番目の予めグループ化されたサブグループ内の点群のu番目のフレームの占有マップの高さであり、w3は定数である。任意で、w3∈(0.5、3.0)である。さらに任意でw3はw2よりも大きい。
方法2-2:候補パッキングアルゴリズムに基づいて得られる、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が第3の閾値以下であり、候補パッキングアルゴリズムに基づいて得られる、(i+1)番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、(i+1)番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が第3の閾値よりも大きい場合に、i番目の予めグループ化されたサブグループがサブグループであると決定する。
候補パッキングアルゴリズムは、グローバルマッチングパッキングアルゴリズム以外の別のパッキングアルゴリズム、例えばアンカーパッキングアルゴリズムであり得る。例えば、sum(NHi,u/Hi,u)/frameCnti≦第3の閾値であり、sum(NHi+1,v/Hi+1,v)/frameCnti+1>第3の閾値である。sum()は合計演算を示す。NHi,uは、候補パッキングアルゴリズムに基づいて得られた、i番目の予めグループ化されたサブグループ内の点群のu番目のフレームの占有マップの高さであり、Hi,uは、グローバルマッチングパッキングアルゴリズムに基づいて得られた、i番目の予めグループ化されたサブグループ内の点群のu番目のフレームの占有マップの高さであり、frameCntiはi番目の予めグループ化されたサブグループに含まれる点群のフレームの数であり、u≧1であり、uは整数である。NHi+1,vは、グローバルマッチングパッキングアルゴリズムに基づいて得られた、(i+1)番目の予めグループ化されたサブグループ内の点群のv番目のフレームの占有マップの高さであり、Hi+1,vは、候補パッキングアルゴリズムに基づいて得られた、(i+1)番目の予めグループ化されたサブグループ内の点群のv番目のフレームの占有マップの高さであり、frameCnti+1は(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数であり、v≧1であり、vは整数である。
任意で、第3の閾値は所定の値である。任意で、第3の閾値は1より大きい値、例えば1.2である。
加えて、任意で、i番目の予めグループ化されたサブグループの特徴情報に基づいてi番目の予めグループ化されたサブグループがサブグループであると決定することは、以下の方法A又は方法Bを含み得る。
方法A:(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズが、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズと比べて第5の閾値以上に減少した場合、それと比較して、i番目の予めグループ化されたサブグループがサブグループとして用いられることを示し、(i+1)番目の予めグループ化されたサブグループがサブグループとして用いられる場合に、グローバルマッチングパッキングアルゴリズムを用いることによりパッキングが行われた場合、点群符号化効率が大幅に低下する。この場合、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定される。
i番目の予めグループ化されたサブグループ内のグローバルマッチパッチが依然として(i+1)番目のサブグループ内のグローバルマッチパッチである場合、(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズは、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズ以上であることが理解されよう。しかしながら、i番目の予めグループ化されたサブグループ内のグローバルマッチパッチのグループは(i+1)番目の予めグループ化されたサブグループ内のグローバルマッチパッチではない場合がある。この場合、それによって、(i+1)の予めグループ化されたサブグループのグローバル占有マップのサイズが、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズよりも小さくなることがある。この理由を考慮して本方法が提案される。
方法B:i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのユニオンパッチ占有マップの面積を含む。これに対応して、(i+1)番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積が、i番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積と比べて第4の閾値以上に減少した場合、それと比較して、i番目の予めグループ化されたサブグループがサブグループとして用いられることを示し、(i+1)番目の予めグループ化されたサブグループがサブグループとして用いられる場合に、グローバルマッチングパッキングアルゴリズムを用いることによりパッキングが行われた場合、点群符号化効率が大幅に低下する。この場合、i番目の予めグループ化されたサブグループがサブグループであると決定される。この方法の関連説明については、方法Aの関連説明を参照されたい。ここでは、詳細については繰り返し説明しない。
上記では、方法の観点から本願の実施形態で提供される解決策を主に記載している。上記の機能を実施するために、係る機能を行うための対応するハードウェア構造及び/又はソフトウェアモジュールが含まれる。当業者であれば、本明細書で開示の実施形態で説明した例のユニット及びアルゴリズムステップと組み合わせて、本願はハードウェア又はハードウェアとコンピュータソフトウェアとの組み合わせによって実施され得ることを容易に気付き得る。機能がハードウェアによって又はコンピュータソフトウェアによって駆動されるハードウェアによって行われるかは、技術的解決策の特定の用途及び設計上の制約に依存する。当業者であれば、特定の用途ごとに、記載された機能を実現するために異なる方法を用いり得るが、その実施は本願の範囲を超えるものであると考えるべきではない。
本願の実施形態では、上記の方法の例に基づいてエンコーダが機能モジュールにグループ化され得る。例えば、各機能モジュールは、対応する機能に基づく分割を通じて得られてもよいし、2つ以上の機能を1つの処理モジュールに統合してもよい。統合モジュールはハードウェアの形態で実施されてもよいし、ソフトウェア機能モジュールの形態で実施されてもよい。なお、本願の実施形態では、モジュール分割は一例であり、単なる論理的な機能分割である。実際の実施では他の分割方法があり得る。
図15は、本願の一実施形態に係るエンコーダ150の概略ブロック図である。エンコーダ150はグループ化モジュール1501及び符号化モジュール1502を含む。
1つの例では、グループ化モジュール1501は図2のパッキングモジュール102に対応し得る。例えば、パッキングプロセスは、符号化すべき点群グループをグループ化するプロセスを含み得る。例えば、符号化すべき点群グループをグループ化するプロセスにおいて、複数のサブグループに含まれる点群の占有マップが生成される。それに対応して、符号化モジュール1502は、図2の1つ以上のモジュールの組み合わせに対応し得る。例えば、符号化モジュール1502は、点群の占有マップを受信する図2のモジュール(例えば、深度マップ生成モジュール103、テクスチャマップ生成モジュール104及び第2の充填モジュール111)と、それらのモジュールに接続されるか又は通信するモジュールとに対応し得る。
別の例では、グループ化モジュール1501は、図2のパッキングモジュール102内のグループ化サブモジュールに対応し得る。例えば、グループ化プロセスとパッキングプロセスとは互いに比較的独立している。それに対応して、符号化モジュール1502は、図2の1つ以上のモジュールの組み合わせに対応し得る。例えば、符号化モジュール1502は、図2のパッキングモジュール102内のパッキングサブモジュール、サブグループに含まれる点群の占有マップを受信するモジュール(例えば、深度マップ生成モジュール103、テクスチャマップ生成モジュール104及び第2の充填モジュール111)及びそれらのモジュールに接続されるか又は通信するモジュールに対応し得る。
具体的な符号化機能については、従来技術又は図2に示すエンコーダの原理の上述の説明を参照されたい。ここでは、詳細については説明を繰り返さない。
実現可能な実施では、グループ化モジュール1501は、符号化すべき点群グループを複数のサブグループにグループ化するように構成され、符号化すべき点群グループを複数のサブグループにグループ化することは、符号化すべき点群グループ内の点群の複数のフレームを予めグループ化して予めグループ化されたサブグループを取得することと、予めグループ化されたサブグループの特徴情報に基づいて、予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定することと、を含み、特徴情報は、予めグループ化されたサブグループ内の点群の占有マップのサイズを表すのに用いられる。符号化モジュール1502は、複数のサブグループに含まれる点群を符号化するように構成されている。例えば、図5を参照して、グループ化モジュール1501はS101を行うように構成してもよく、符号化モジュール1502はS102を行うように構成してもよい。
実現可能な実施では、符号化すべき点群グループ内の点群の複数のフレームを予めグループ化して予めグループ化されたサブグループを取得する態様において、グループ化モジュール1501は、点群のj番目のフレームを開始点として用いることにより、符号化すべき点群グループにグループ化されていない点群をi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得するように具体的に構成され、点群のj番目のフレームは、グループ化されていない点群内の点群の第1のフレームであり、i≧1であり、iは整数であり、j≧1であり、jは整数であり、i番目の予めグループ化されたサブグループは、点群のj番目のフレームから始まる点群の1つ以上のフレームを含む。
それに対応して、予めグループ化されたサブグループの特徴情報に基づいて、予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定する態様において、グループ化モジュール1501は、i番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定するよう具体的に構成されている。
実現可能な実施では、i番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定する態様において、グループ化モジュール1501は、i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定するよう具体的に構成されている。
実現可能な実施では、i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定する態様において、グループ化モジュール1501は、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が該所定の条件を満たさない場合に、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定するよう具体的に構成されている。例えば、図7を参照して、グループ化モジュール1501はS207を行うように構成され得る。別の例として、図13を参照して、グループ化モジュール1501は、S303及びS304のいくつかのステップを行うように構成され得る。
実現可能な実施では、第1の閾値は所定の値である。あるいは、第1の閾値は、候補パッキングアルゴリズムに基づいて得られる、符号化すべき点群グループ内の点群の占有マップの最大サイズに基づいて決定される。
実現可能な実施では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズを含む。それ対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合に、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定する態様において、グループ化モジュール1501は、i番目の予めグループ化されたサブグループ内の大型点群のフレームの数が第1の所定の数以下であり、(i+1)番目の予めグループ化されたサブグループ内の大型点群のフレームの数が該第1の所定の数よりも大きい場合、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定することであって、大型点群は、占有マップのサイズが第2の閾値以上の点群である、こと又は候補パッキングアルゴリズムに基づいて得られる、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が第3の閾値以下であり、候補パッキングアルゴリズムに基づいて得られる、(i+1)番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、(i+1)番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が第3の閾値よりも大きい場合に、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定すること、を行うよう具体的に構成されている。
実現可能な実施では、第2の閾値は所定の値である。あるいは、大型点群は、グローバルマッチングパッキングアルゴリズムに基づいて得られた占有マップのサイズが第2の閾値以上である点群であり、第2の閾値は、候補パッキングアルゴリズムに基づいて得られる、符号化すべき点群グループ内の点群の占有マップの最大サイズに基づいて決定されるか又は候補パッキングアルゴリズムに基づいて得られる、現在の点群の占有マップのサイズに基づいて決定される。
実現可能な実施では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズを含む。それ対応して、i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定する態様において、グループ化モジュール1501は、i番目の予めグループ化されたサブグループ内のグローバル占有マップのサイズが第1の閾値以下であり、(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズが第1の閾値よりも大きい場合、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定すること、又は(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズがi番目の予めグループ化されたサブグループのグローバル占有マップのサイズと比べて第5の閾値以上減少した場合に、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定すること行うように具体的に構成されている。
実現可能な実施では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのユニオンパッチ占有マップの面積を含む。i番目の予めグループ化されたサブグループの特徴情報及び(i+1)番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループが複数のサブグループの1つであると決定する態様において、グループ化モジュール1501は、(i+1)番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積がi番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積と比べて第4の閾値以上減少した場合に、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定すること行うように具体的に構成されている。
実現可能な実施では、符号化すべき点群グループにグループ化されていない点群を、点群のj番目のフレームを開始点として用いることによりi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得する態様において、グループ化モジュール1501は、点群のj番目のフレームを開始点として用いることにより、符号化すべき点群グループにグループ化されていない点群に対してウィンドウをi回目にスライドさせてi番目の予めグループ化されたサブグループを取得すること又は点群のj番目のフレームを開始点として用いることにより、符号化すべき点群グループにグループ化されていない点群に対して二分法をi回目に行うことによりi番目の予めグループ化されたサブグループを取得することを行うよう具体的に構成されている。
実現可能な実施では、i1回目にウィンドウをスライドさせるのに用いられるステップサイズは、i2回目にウィンドウをスライドさせるのに用いられるステップサイズ以上であり、1≦i1<i2≦iであり、i1及びi2の双方は整数である。
実現可能な実施では、グループ化モジュール1501は、式N[i+1]=N[i]×cにしたがって、(i+1)回目にウィンドウをスライドさせるのに用いられるステップサイズN[i+1]を得るようさらに構成され、N[i]はi回目にウィンドウをスライドさせるのに用いられるステップサイズであり、cは、i番目の予めグループ化されたサブグループ内の大型点群のフレームの数に基づいて決定され、該大型点群は、占有マップのサイズが第2の閾値以上の点群である。
実現可能な実施では、cは式c=(a-b)/aを満たし、aは第1の所定の数であり、bはi番目の予めグループ化されたサブグループ内の大型点群のフレームの数である。
実現可能な実施では、符号化すべき点群グループにグループ化されていない点群を、点群のj番目のフレームを開始点として用いることによりi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得する態様において、グループ化モジュール1501は、点群のj番目のフレームを開始点として用いることにより、符号化すべき点群グループにグループ化されていない点群に対してi回目にウィンドウをスライドさせてi番目の予めグループ化されたサブグループを取得するように具体的に構成されている。それに対応して、i番目の予めグループ化されたサブグループの特徴情報に基づいて、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定する態様において、グループ化モジュール1501は、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たし、(i+1)番目の予めグループ化されたサブグループの特徴情報が該所定の条件を満たさない場合に、第2のステップサイズを用いることにより(i+1)番目の予めグループ化されたサブグループを再取得することであって、該第2のステップサイズは第1のステップサイズよりも小さく、該第1のステップサイズは(i+1)番目の予めグループ化されたサブグループが最初に得られるときに用いられるステップサイズである、ことと、再度取得された(i+1)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たさない場合に、第3のステップサイズを用いることにより(i+1)番目の予めグループ化されたサブグループを再取得し、該第3のステップサイズは第2のステップサイズよりも小さく、同様に、(i+1)番目の予めグループ化されたサブグループを再取得した回数が所定の回数に達するか又は最新の再取得した(i+1)番目の予めグループ化されたサブグループのステップサイズが所定のステップサイズ以下である場合に、最新の再取得した(i+1)番目の予めグループ化されたサブグループの特徴情報が前記所定の条件を満たさない場合に、i番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定することを行うよう具体的に構成されている。例えば、図9A及び図9Bを参照して、グループ化モジュール1501は、S207A及びS207Bを行うように構成され得る。
実現可能な実施では、符号化すべき点群を複数のサブグループにグループ化する態様において、グループ化モジュール1501は、再取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数以下である場合に、この時に再取得された(i+1)番目の予めグループ化されたサブグループがサブグループであると決定すること又は再取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数よりも大きい場合に、第4のステップサイズを用いることにより(i+2)番目の予めグループ化されたサブグループを取得することであって、第2のステップサイズと第4のステップサイズとの合計は第1のステップサイズよりも小さい、ことと、(i+2)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合に、第5のステップサイズを用いることにより(i+3)番目の予めグループ化されたサブグループを取得することであって、第2のステップサイズ、第4のステップサイズ及び該第5のステップサイズの合計は第1のステップサイズよりも小さい、ことと、同様に、取得された(i+k)番目の予めグループ化されたサブグループに含まれる点群のフレームの数と、最初に取得された(i+1)番目の予めグループ化されたサブグループに含まれる点群のフレームの数との差が第2の所定の数以下の場合に、(i+k)番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合、(i+k)番目の予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定することであって、k≧2であり、kは整数である、ことと、を行うよう具体的に構成されている。例えば、図9A及び図9Bを参照して、グループ化モジュール1501はS207Cを行うように構成され得る。
実現可能な実施では、符号化すべき点群グループにグループ化されていない点群を、点群のj番目のフレームを開始点として用いることによりi回目に予めグループ化してi番目の予めグループ化されたサブグループを取得する態様において、グループ化モジュール1501は、点群のj番目のフレームを開始点として用いることにより、符号化すべき点群グループにグループ化されていない点群に対してi回目に二分法を行うことによりi番目の予めグループ化されたサブグループを取得するよう具体的に構成されている。それに対応して、i番目の予めグループ化されたサブグループの特徴情報に基づいて、予めグループ化されたサブグループが複数のサブグループのうちの1つであると決定する態様において、グループ化モジュール1501は、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たす場合に、i番目の予めグループ化されたサブグループは複数のサブグループのうちの1つであると決定するよう具体的に構成されている。例えば、図14を参照して、グループ化モジュール1501は、S403及びS404のいくつかのステップを行うように構成され得る。
実現可能な実施では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズを含む。それに対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすことは、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズが第1の閾値以下であること及び/又は(i+1)番目の予めグループ化されたサブグループのグローバル占有マップのサイズが、i番目の予めグループ化されたサブグループのグローバル占有マップのサイズと比べて、第5の閾値以上に減少することを含む。
実現可能な実装では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズを含む。これに対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすことは、i番目の予めグループ化されたサブグループ内の大型点群のフレームの数が第1の所定の数以下であり、大型点群は、占有マップサイズが第2の閾値以上の点群である、こと又は候補パッキングアルゴリズムに基づいて得られる、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズに対するグローバルマッチングパッキングアルゴリズムに基づいて得られる、i番目の予めグループ化されたサブグループ内の点群の占有マップのサイズの比の平均値が第3の閾値以下であることを含む。第2の閾値の実施については、前述の説明を参照されたい。
実現可能な実施では、i番目の予めグループ化されたサブグループの特徴情報は、i番目の予めグループ化されたサブグループのユニオンパッチ占有マップの面積を含む。これに対応して、i番目の予めグループ化されたサブグループの特徴情報が所定の条件を満たすことは、(i+1)番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積が、i番目の予めグループ化されたサブグループのユニオンパッチ占有マップの全面積と比べて第4の閾値以上減少することを含む。
矛盾が生じない場合には、新たな技術的解決策を構成するために、上述の任意の複数の実現可能な実施における一部の又は全ての特徴情報を組み合わせて用いられ得ることが理解されよう。例えば、i番目の予めグループ化されたサブグループが所定の条件を満たすかどうかを判定する方法については、前述の対応する実現可能な実施を参照されたい。
本願の本実施形態におけるエンコーダ内のモジュールは、本願の対応する点群符号化方法に含まれる様々な実行ステップを実装する機能的エンティティ、すなわち、本願の対応する点群符号化方法における全てのステップ及びそれらのステップの拡張及び変形例を実施する機能的エンティティであるであることが理解されよう。簡略化のために、本明細書では詳細については説明を繰り返さない。
図16は、本願の一実施形態に係る符号化装置160の実施の概略ブロック図である。符号化装置160は、プロセッサ1610、メモリ1630及びバスシステム1650を含み得る。プロセッサ1610は、バスシステム1650を介してメモリ1630に接続されている。メモリ1630は命令を記憶するように構成されている。プロセッサ1610は、メモリ1630に記憶された命令を実行して、本願に記載の様々な点群符号化方法を行うように構成されている。繰り返しを避けるために、ここでは詳細について繰り返し説明しない。
本願の本実施形態では、プロセッサ1610は中央処理装置(central processing unit、CPU)であってもいいし、プロセッサ1610は別の汎用プロセッサ、DSP、ASIC、FPGA又は別のプログラマブル論理デバイス、個別ゲート又はトランジスタ論理デバイス、個別ハードウェアコンポーネント等であってもよい。汎用プロセッサはマイクロプロセッサであってもいいし、プロセッサは任意の従来のプロセッサ等であってもよい。
メモリ1630はROM装置又はRAM装置を含み得る。あるいは、任意の他の適切な種類の記憶装置がメモリ1630として用いられ得る。メモリ1630は、バスシステム1650を介してプロセッサ1610によりアクセスされるコード及びデータ1631を含み得る。メモリ1630は、オペレーティングシステム1633及びアプリケーション1635をさらに含み得る。アプリケーション1635は、本願に記載の点群符号化をプロセッサ1610が行うことができるようにする少なくとも1つのプログラムを含む。例えば、アプリケーション1635はアプリケーション1~Nを含んでもよく、本願に記載の点群符号化方法を行う点群符号化アプリケーションをさらに含んでもよい。
バスシステム1650は、データバスに加えて、電力バス、制御バス、ステータス信号バス等をさらに含み得る。しかしながら、明確に説明するために、図中の様々な種類のバスはバスシステム1650として記されている。
任意で、符号化装置160は1つ以上の出力装置、例えばディスプレイ1670をさらに含み得る。1つの例では、ディスプレイ1670は、ディスプレイと、タッチ入力を感知するように動作可能なタッチセンシティブユニットとを組み合わせたタッチセンシティブディスプレイであり得る。ディスプレイ1670は、バスシステム1650を介してプロセッサ1610に接続され得る。
当業者であれば、本明細書で開示及び説明した様々な例示的な論理ブロック、モジュール及びアルゴリズムステップを参照して説明した機能は、ハードウェア、ソフトウェア、ファームウェア又はそれらの任意の組み合わせによって実施できることが分かる。実施形態がソフトウェアにより実施される場合、例示の論理ブロック、モジュール及びステップを参照して説明した機能は、1つ以上の命令又はコードとしてコンピュータ読み取り可能媒体に記憶されるか又はそれを介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ読み取り可能媒体は、データ記憶媒体等の有形媒体又は(例えば、通信プロトコルに従って)ある場所から他の場所へのコンピュータプログラムの転送を促進する任意の媒体を含む通信媒体に対応するコンピュータ読み取り可能記憶媒体を含み得る。このように、コンピュータ読み取り可能媒体は、(1)非一時的な有形のコンピュータ読み取り可能記憶媒体又は(2)信号又はキャリア等の通信媒体に概して対応し得る。データ記憶媒体は、本願に記載の技術を実施するための命令、コード及び/又はデータ構造を取り出すために、1つ以上のコンピュータ又は1つ以上のプロセッサによってアクセス可能な任意の使用可能な媒体であり得る。コンピュータプログラム製品は、コンピュータ読み取り可能媒体を含み得る。
1つの例では、限定されないが、そのようなコンピュータ読み取り可能記憶媒体はRAM、ROM、EEPROM、CD-ROM又は他のコンパクトディスク記憶装置、磁気ディスク記憶装置又は他の磁気記憶装置、フラッシュメモリ又は命令若しくはデータ構造の形態で所望のプログラムコードを記憶するために用いることができ、コンピュータによってアクセス可能な任意の他の媒体を含み得る。加えて、任意の接続もコンピュータ読み取り可能媒体と適切に言及される。例えば、同軸ケーブル、光ファイバ、ツイストペア、デジタル加入者線(DSL)又は赤外線、無線及びマイクロ波等の無線技術を介して、ウェブサイト、サーバ又は他のリモートソースから命令が送信される場合、同軸ケーブル、光ファイバ、ツイストペア、DSL又は赤外線、無線及びマイクロ波等の無線技術も媒体の定義に含まれる。しかしながら、コンピュータ読み取り可能記憶媒体及びデータ記憶媒体は、接続、キャリア、信号又は他の一時的な媒体を含まず、実際には非一時的な有形の記憶媒体を意味することを理解すべきである。本明細書で用いられる磁気ディスク及びディスクは、コンパクトディスク(CD)、レーザディスク、光ディスク、DVD及びブルーレイディスクを含む。通常、磁気ディスクは磁気的にデータを再生するのに対して、ディスクはレーザーを用いて光学的にデータを再生する。前述の項目の組み合わせもコンピュータ読み取り可能媒体の範囲に含まれるべきである。
命令は、1つ以上のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)又は他の同等の集積若しくは個別の論理回路等の1つ以上のプロセッサによって実行され得る。したがって、本明細書で用いる「プロセッサ」という用語は前述の構造又は本明細書に記載の技術の実施に適用され得る任意の他の構造を意味し得る。加えて、一部の態様では、本明細書に記載の例示の論理ブロック、モジュール及びステップを参照して説明される機能は、符号化及び復号化のために構成される専用ハードウェア及び/又はソフトウェアモジュール内で提供されていいし、統合コーデックに組み込まれてもよい。加えて、これらの技術は、全て1つ以上の回路又は論理素子において実施され得る。1つの例では、エンコーダ100及びデコーダ200内の様々な記述論理ブロック、ユニット及びモジュールは、対応する回路デバイス又は論理素子として理解され得る。
本願における技術は、無線ハンドセット、集積回路(IC)又はICのセット(例えば、チップセット)を含む様々な装置又はデバイスで実施され得る。様々なコンポーネント、モジュール又はユニットが開示の技術を行うように構成された装置の機能的側面を強調するために本出願で記載されているが、必ずしも異なるハードウェアユニットにより実施されるわけではない。実際には、上述したように、様々なユニットが、適切なソフトウェア及び/又はファームウェアとの組み合わせでコーデックハードウェアユニットに統合され得るか又は(上述した1つ以上のプロセッサを含む)相互運用可能なハードウェアユニットによって提供され得る。
前述の説明は本願の特定の実施の例に過ぎず、本願の保護範囲を制限することを意図するものではない。本願に開示の技術的範囲内で当業者が容易に思いつく任意の変更又は代替は本願の保護範囲に含まれる。したがって、本願の保護範囲は、特許請求の範囲の保護範囲に従うものとする。