私のプロジェクトでは、アルゴリズムによって計算された 20.000 ポイントのハイジ サーフェスがあります。このアルゴリズムでは、小さな領域で 1 つ以上のポイントを間違って計算するというエラーが発生することがあります。
このエラーはアルゴリズムでは解決できませんが、後で検出する必要があります。
エラーは、次の図で確認できます。
ご覧のとおり、完全に均一な表面を壊すだけでなく、プロットの美学を破壊する誤って計算された点があります (これはプロジェクトでも重要です)。
場合によっては 1 ポイントを超えることもありますが、一般的には 5 または 6 以下です。エラーは常に Z 軸であるため、X と Y を確認する必要はありません。
この点を検出するための少し「一般的な」アルゴリズムを見つけるために、私は心を圧迫してきました。おそらく表面のパッチを取り、Zを意味し、分散からポイントを検出すると思います...しかし、それが常に機能するとは思いません。
何か案は?
注:誰かにコードを書いてもらいたくありません。ただのアイデアです。
PD: abobe 画像の関連コード:
[x,y] = meshgrid([-2:.07:2]);
Z = x.*exp(-x.^2-y.^2);
subplot(1,2,1)
surf(x,y,Z,gradient(Z))
subplot(1,2,2)
Z(35,35)=Z(35,35)+0.3;
surf(x,y,Z,gradient(Z))