Saltar al contenido

¿Cómo puedo encontrar el promedio de dos curvas 2D?

Te recomendamos que revises esta respuesta en un ambiente controlado antes de pasarlo a producción, un saludo.

Solución:

Creo que la palabra clave que necesita para encontrar literatura sobre su problema es morphing. Existe una extensa literatura sobre gráficos por computadora al respecto. A continuación se muestra una figura de un artículo seleccionado casi al azar: “Transformación mediante curvas y técnicas de interpolación de formas” Johan, H .; Koiso, Y .; Nishita, T. en Gráficos y aplicaciones informáticas, págs. 348 – 454, 2000. La cuarta cifra de la secuencia podría servir como el promedio que busca.

texto alternativo

Otra referencia es “Transformación multiresolución para curvas planas”, Hahmann, S. y Bonneau, G.-P. y Caramiaux, B. y Cornillac, M.,
Informática 79 (2007) 197-209. Utilizando el key términos de búsqueda y Google Académico con estas dos referencias, deberían llevarlo a una gran cantidad de literatura relevante.

Consulte también esta pregunta relacionada con el MO sobre la distancia entre dos curvas.

Una forma de definir un promedio podría comenzar de la siguiente manera: primero introduce una métrica en el espacio de todas las curvas, es decir, una forma de decir la distancia entre dos curvas (debería haber una forma natural de hacerlo para las curvas en el plano euclidiano) . Luego, intenta encontrar un camino más corto en este espacio que conecte las dos curvas (una geodésica) y llama a la curva que se encuentra a la mitad del camino el promedio. Dado que en realidad está considerando polígonos con un número fijo de vértices, el “espacio de todas las curvas” es de dimensión finita, por lo que las cosas podrían ser más computables. Supongo que esto conduce a algunas matemáticas interesantes, pero no sé qué se ha hecho en esta área. Quizás puedas encontrar más información en este artículo de Younes, Michor, Shah y Mumford.

Aclare su pregunta: defina rigurosamente lo que quiere decir con curva y línea.

@mmr, hasta ahora, en la forma en que ha definido su pregunta, no tiene dos curvas bidimensionales, ni siquiera tiene una curva o línea definida para cada conjunto individual. Lo que sí tiene son dos conjuntos de puntos en un espacio bidimensional, $ N_1 $ y $ N_2 $. Tampoco ha indicado que el número de puntos en cada conjunto sea el mismo o diferente, por lo que la cardinalidad de ambos conjuntos no es necesariamente la misma.

Ahora, ¿cómo está definiendo las “curvas” o segmentos de línea para cada conjunto de puntos? Si no tiene una definición que mapee desde el conjunto de puntos $ N_1 $ a una línea o segmento de línea en $ mathbb R ^ 2 $ o una curva en $ mathbb R ^ 2 $, entonces No tiene sentido tratar de definir una nueva función que defina el promedio o una nueva función que parametriza el peso promedio de una línea que interpola las dos llamadas “líneas” definidas por $ N_1 $ y $ N_2 $.

El mapeo de su función desde el conjunto de puntos hasta la “curva” que desea debe definirse, en primer lugar, para un conjunto único de puntos.

  • Podría definirla como la línea de mejor ajuste de la forma $ y = mx + b $ con ajuste definido como ajuste por mínimos cuadrados.

  • Podría definirlo como la unión lineal por partes de los segmentos de línea que unen los puntos del conjunto; pero en ese caso, debe proporcionar un orden o secuencia a los puntos en cada conjunto, de modo que no haya ambigüedad sobre la dirección y el orden de los segmentos de línea. En este caso, no es necesario que los dos conjuntos sean de la misma ordinalidad: podría definir un punto paramétrico a lo largo de cada segmento de línea lineal por partes con $ 0 $ correspondiente al punto de partida en $ N_1 $ y $ N_2 $ y $ 1 $ correspondiente al punto final en $ N_1 $ y $ N_2 $ y con $ 0 le f le 1 $ definiendo el punto parcialmente a lo largo de la longitud euclidiana de los dos segmentos de línea (o cualquier otra longitud que le gustaría diseñar) , y $ 0 le p le 1 $ definiendo la ponderación entre las líneas $ N_1 $ y $ N_2 $ con $ p = 0 $ que denota la línea $ N_1 $ y $ p = 1 $ que denota la línea $ N_2 $. Entonces $ p = 0.5 $ con $ f $ variando de $ 0 $ a $ 1 $ definiría el promedio de las dos líneas lineales por partes $ N_1 $ y $ N_2 $.

  • si los conjuntos tienen la misma cardinalidad, podría definir una curva paramétrica en $ t $ para cada una de las dos líneas, ya sea que la defina como una curva bezier, una spline cúbica, alguna otra forma de spline, donde termina con el funciones para cada línea donde $ t $ varía de $ 0 $ a $ 1 $:

($ x_1, y_1) = (f_1 (t), g_1 (t) $) y

($ x_2, y_2) = (f_2 (t), g_2 (t) $),

permitiéndole crear la línea promedio ponderada $$ (x_a, y_a) = (p f_1 (t) + (1-p) f_2 (t), p g_1 (t) + (1-p) g_2 (t)), $$ donde $ p = 0 $ da todo el peso a la línea 1 definida por $ N_1 $ y $ p = 1 $ da todo el peso a la línea 2 definida por $ N_2 $

Incluso si los dos conjuntos tienen el mismo número de puntos, el orden en el que se especifican los puntos y el orden en el que se asignan entre sí modificará la línea “promedio” entre ellos y, por lo tanto, cambiará la definición de el promedio ponderado “interpolado” entre ellos.

Si no se molesta en especificar rigurosamente el dominio y el rango de su pregunta, no creo que realmente pueda quejarse de que

… Tengo tres respuestas, pero ninguna ‘respuesta’ real a la pregunta …

como lo hace en los comentarios a su propia pregunta.

Si decide definir su pregunta de manera rigurosa, tal vez yo (y otros) podamos dar una respuesta rigurosa.

Si estás de acuerdo, tienes la libertad de dejar una noticia acerca de qué le añadirías a esta división.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *