@NickS
Dado que no es seguro que la segunda señal en los gráficos sea de hecho una versión únicamente retrasada de la primera, deben intentarse otros métodos además de la correlación cruzada clásica. Esto se debe a que la correlación cruzada (CC) es simplemente un estimador de máxima verosimilitud si sus señales son versiones retrasadas entre sí. En este caso, claramente no lo son, por no decir nada sobre la no estacionariedad de ellos tampoco.
En este caso, creo que lo que puede funcionar es una estimación del tiempo de la energía significativa de las señales. De acuerdo, 'significativo' puede o no puede ser algo subjetivo, pero creo que al observar sus señales desde un punto de vista estadístico, podremos cuantificar 'significativo' e ir desde allí.
Con este fin, hice lo siguiente:
PASO 1: Calcule los sobres de señal:
Este paso es simple, ya que se calcula el valor absoluto de salida de la Transformada de Hilbert de cada una de sus señales. Existen otros métodos para calcular sobres, pero esto es bastante sencillo. Este método esencialmente calcula la forma analítica de su señal, en otras palabras, la representación fasorial. Cuando tomas el valor absoluto, estás destruyendo la fase y solo después de la energía.
Además, dado que buscamos una estimación de retraso de tiempo de la energía de sus señales, este enfoque está garantizado.
PASO 2: Elimine el ruido con filtros mediales no lineales que conservan los bordes:
Este es un paso importante. El objetivo aquí es suavizar sus envolturas de energía, pero sin destruir ni suavizar sus bordes y tiempos de subida rápidos. En realidad, hay un campo completo dedicado a esto, pero para nuestros propósitos aquí, simplemente podemos usar un filtro Medial no lineal fácil de implementar . (Filtrado medio). Esta es una técnica poderosa porque, a diferencia del filtrado medio , el filtrado medial no anulará sus bordes, pero al mismo tiempo 'suavizará' su señal sin una degradación significativa de los bordes importantes, ya que en ningún momento se realiza ninguna aritmética en su señal (siempre que la longitud de la ventana sea impar). Para nuestro caso aquí, seleccioné un filtro medial de tamaño de ventana de 25 muestras:
PASO 3: Eliminar tiempo: Construir funciones de estimación de densidad del núcleo gaussiano:
¿Qué ocurriría si miraras la trama anterior de lado en lugar de la forma normal? Matemáticamente hablando, eso significa, ¿qué obtendrías si proyectaras cada muestra de nuestras señales sin ruido en el eje de amplitud y? Al hacerlo, lograremos eliminar el tiempo, por así decirlo, y podremos estudiar únicamente las estadísticas de la señal.
Intuitivamente, ¿qué sale de la figura de arriba? Si bien la energía del ruido es baja, tiene la ventaja de que es más "popular". En contraste, mientras que la envolvente de señal que tiene energía es más enérgica que el ruido, está fragmentada a través de umbrales. ¿Qué pasa si consideramos la 'popularidad' como una medida de energía? Esto es lo que haremos con la implementación (mi crudo) de una función de densidad del núcleo (KDE), con un núcleo gaussiano.
Para hacer esto, se toma cada muestra y se construye una función gaussiana utilizando su valor como media, y se selecciona un ancho de banda preestablecido (varianza) a priori. Establecer la varianza de su gaussiano es un parámetro importante, pero puede establecerlo según las estadísticas de ruido según su aplicación y las señales típicas. (Solo tengo tus 2 archivos para activar). Si luego construimos la Estimación de KDE, obtenemos la siguiente gráfica:
Puede pensar en el KDE como una forma continua de un histograma, por decirlo así, y la varianza como su ancho de bin. Sin embargo, tiene la ventaja de garantizar un PDF sin problemas en el que luego podemos realizar el primer y segundo cálculo derivado. Ahora que tenemos los KDE gaussianos, podemos ver dónde las muestras de ruido alcanzan su mayor popularidad. Recuerde que el eje x aquí representa las proyecciones de nuestros datos en el espacio de amplitud. Por lo tanto, podemos ver en qué umbrales es más "enérgico" el ruido, y esos nos dicen qué umbrales debemos evitar.
En la segunda gráfica, se toma la primera derivada de los KDE gaussianos , y seleccionamos la abscisa de la primera muestra después de la primera derivada después del pico de la mezcla de gaussianos para alcanzar un cierto valor cercano a cero. (O primer cruce por cero). Podemos usar este método y estar 'seguros' porque nuestro KDE se construyó con gaussianos suaves de ancho de banda razonable, y se tomó la primera derivada de esta función suave y sin ruido. (Por lo general, las primeras derivadas pueden ser problemáticas en cualquier cosa que no sean señales SNR altas ya que aumentan el ruido).
Las líneas negras muestran entonces en qué umbrales sería prudente 'segmentar' la imagen, para evitar todo el ruido de fondo. Si luego aplicamos a nuestras señales originales, alcanzamos los siguientes gráficos, con las líneas negras que indican el inicio de la energía de nuestras señales:
Esto produce así un muestras.δt =241
Espero que esto haya ayudado.