最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。
関心領域 (ROI) の多角形を領域マスクに変換
ピクセルの四角形の集合を含む多角形を指定するには、ピクセルの中心ではなく境界ピクセルの外側エッジに、多角形のエッジを合わせます。
たとえば、4 列目から 10 列目、4 行目から 10 行目にあるピクセルが含まれるようにするには、次のようにして多角形の頂点を指定します。
x = [4 10 10 4 4]; y = [4 4 10 10 4]; mask = poly2mask(x,y,12,12)
mask = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
この例では、多角形は境界ピクセルの中心を通過し、目的の境界ピクセルのうちいくつかのみが多角形の内側にある 4 行 4 列目のピクセルは多角形の内側にない) と判定される結果となりました。これらの要素が多角形に含まれるようにするには、次の例のように、分数値を使用して 4 番目の行 (3.5) と 10 番目の行 (10.5) の外側エッジと、4 番目の列 (3.5) と 10 番目の列 (10.5) の外側エッジを頂点として指定します。
x = [3.5 10.5 10.5 3.5 3.5]; y = [3.5 3.5 10.5 10.5 3.5]; mask = poly2mask(x,y,12,12)
mask = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
関心領域 (ROI) のマスクを作成する場合、poly2mask
は、どのピクセルが領域に含まれるかを判断しなければなりません。領域のエッジにあるピクセルの一部分しか境界線上にない場合は、これを判断するのが難しくなる場合があります。次の図は三角形の関心領域を表したもので、ROI の頂点の 1 つを拡大して調べています。この図は、関心領域の境界でピクセルの一部がどのように覆われるかを示しています。
ROI のエッジにあるピクセルの一部分のみが境界上にある
どのピクセルが領域内にあるかを判断するために、poly2mask
は次のアルゴリズムを使用します。
各ピクセルを 5 行 5 列のサブピクセル グリッドに分割します。
この図は、先に 5 行 5 列のサブピクセル グリッドで示した ROI の頂点を含んでいるピクセルを示しています。
頂点の位置を調整します。
poly2mask
は、サブピクセル グリッド上の最も近い交点に、多角形の各頂点を移動します。poly2mask
が x 座標と y 座標を丸めて最近傍のサブピクセル グリッドのコーナーを見つける方法に注意してください。これにより 2 番目の変更された多角形が作成されます。図に、変更された頂点を赤の "X" で示します。
調整された頂点間のパスを描きます。
poly2mask
は、サブピクセル グリッドのエッジに沿って、調節後の各頂点から次の頂点へのパスを作成します。図では、この変更された多角形の一部が太い実線で示されています。
どの境界ピクセルが多角形の内側にあるかを判断します。
poly2mask
は、どの境界ピクセルが多角形の内側にあるかを、次のように判断します。ピクセルの中心のサブピクセルが調節後の頂点間のパスによって定義された境界の内側にある場合、そのピクセルは領域の内側にあると見なされます。
次の図では、ROI の境界上にあるピクセルの中心のサブピクセルは、濃いグレーで淡色表示されています。多角形の内側にあるピクセルは、薄いグレーで淡色表示されています。頂点を含んでいるピクセルは ROI の一部ではないことに注意してください。これは、その中心のピクセルが修正後の多角形の内側にないためです。