J'ai un problème de formulation similaire à ce post, avec quelques différences notables:
Quelles méthodes simples existe-t-il pour échantillonner de manière adaptative une fonction 2D?
Comme dans ce post:
- J'ai un et l'évaluation de cette fonction coûte un peu cher à calculer
Contrairement à ce poste:
Je ne m'intéresse pas à la valeur de la fonction avec précision partout, mais seulement à trouver un seul isocontour de la fonction.
Je peux faire des affirmations significatives sur l'autocorrélation de la fonction, et par conséquent sur l'échelle de lissage.
Existe-t-il un moyen intelligent de suivre / échantillonner cette fonction et de trouver ce contour?
Plus d'information
La fonction est le calcul des caractéristiques Haralick sur pixels entourant le point et la classification douce par une sorte de classifieur / régresseur. La sortie de ceci est un nombre à virgule flottante qui indique à quelle texture / matériau le point appartient. L'échelle de ce nombre peut être des probabilités de classe estimées (SoftSVM ou méthodes statistiques, etc.) ou quelque chose de vraiment simple comme la sortie d'une régression linéaire / logistique. La classification / régression est précise et bon marché par rapport au temps nécessaire à l'extraction des caractéristiques de l'image.
Les statistiques entourant signifient que la fenêtre échantillonne généralement les régions qui se chevauchent et, en tant que tel, il existe une corrélation significative entre les échantillons voisins. (Quelque chose que je peux même aborder numériquement / symboliquement) Par conséquent, cela peut être considéré comme une fonction plus complexe de où un plus grand donnera une estimation plus liée au voisinage (hautement corrélée), et un un plus petit donnera une estimation plus variable, mais plus locale.
Choses que j'ai essayées:
Calcul brutal - Fonctionne bien. 95% de segmentation correcte avec constant . Les résultats sont fantastiques lorsqu'ils sont profilés en utilisant n'importe quelle méthode standard après cela. Cela prend une éternité . Je peux simplifier les fonctionnalités calculées par échantillon, mais idéalement, je veux éviter cela pour garder ce code général aux images avec des textures dont les différences apparaissent dans différentes parties de l'espace des fonctionnalités.
Dumb Stepping - Faites un "pas" d'un pixel dans chaque direction et choisissez la direction à déplacer en fonction de la proximité de la valeur de l'iso-ligne. Encore assez lent, et il ignorera la bifurcation d'une isoligne. De plus, dans les zones à gradient plat, il "vagabonde" ou se replie sur lui-même.
Je pense que je veux faire quelque chose comme la subdivision proposée dans le premier lien, mais élagué pour les cases qui délimitent l'isoligne d'intérêt. Je pense que je devrais être capable de tirer parti de également, mais je ne sais pas comment aborder cela.