Varias de las respuestas proporcionadas aquí ya no son opciones para QGIS 3, y/o sólo permiten transformaciones lineales del archivo vectorial que se está georreferenciando. Esto puede responder a la pregunta del OP, pero otros que miran este post pueden querer otras opciones de transformación para georreferenciar archivos vectoriales.
Problemas con algunas de las soluciones para georreferenciar archivos vectoriales:
-
El plugin qgsAffine sólo permite transformaciones lineales. Esto Esto significa que puede escalar, rotar y mover el archivo vectorial, pero no puede doblar o deformar el archivo vectorial. El Georreferenciador para archivos rasterizados ofrece más opciones, y permite una variedad de transformaciones, incluyendo el polinomio de segundo orden y el spline de placa fina. Además, no parece no parece que el plugin qgsAffine esté todavía disponible en QGIS 3.
-
El módulo v.transform de GRASS es similar al plugin qgsAffine, y sólo permite transformaciones lineales.
-
El plugin Vector Bender parece que era una buena opción, pero tiene no ha sido completamente portado a QGIS 3, por lo que no es actualmente una opción. En parece que ya no se mantiene.
Usar ogr2ogr, como se sugiere en el post de HeikkiVesanto, es una buena opción. Permite utilizar GCPs (Ground Control Points), y especificar el tipo de transformación que se desea. No pude encontrar instrucciones en ninguna parte sobre cómo hacer esto, así que he incluido algunas instrucciones a continuación:
-
Generar un conjunto de pares de GCP, siendo un punto el original original en el archivo vectorial no georreferenciado, y el otro punto es la ubicación deseada en su espacio de trabajo georreferenciado.
-
Hay varias formas de generar BPC. Yo he utilizado el Georeferencer GDAL en QGIS. Está disponible en el menú desplegable Raster, una vez instalado con el gestor de plugins. Sólo funciona con archivos ráster, por lo que primero hay que convertir el archivo vectorial vectorial a un archivo raster. Esto es posible con "Processing Toolbox: GDAL: Conversión de vectores: Rasterize (vector to raster)". Establezca la resolución a un número que todavía le permita ver las características del archivo vectorial.
-
El Georreferenciador tiene una bonita interfaz, que permite añadir muchos puntos GCP. También puede probar diferentes transformaciones, y ver cuál funciona mejor. Y puede ver si alguno de sus puntos GCP está de sus puntos GCP está en error, observando sus residuos. Una vez que haya una vez que haya añadido todos los puntos GCP y haya comprobado que le gusta el resultado, puede puede exportar el archivo GCP desde el Georreferenciador para utilizarlo en la georreferenciación del archivo vectorial original.
-
Es necesario cambiar el archivo GCP para que tenga el siguiente formato. Usted puede añadir tantos puntos GCP como desee, cada uno va precedido de un -gcp y separado por un espacio. He ejecutado esto con más de 800 puntos GCP, y funcionó muy bien.
-gcp <ungeoref_x1> <ungeoref_y1> <georef_x1> <georef_y1> -gcp <ungeoref_x2> <ungeoref_y2> <georef_x2> <georef_y2>
-
Hay varias maneras de cambiar los puntos GCP en el formato correcto. Yo los importé a Excel como un archivo csv y creé una columna para dar salida al formato correcto para cada punto. Luego pegué esa columna en TextEdit y sustituí los finales de línea con espacios.
-
El archivo vectorial que se desea georreferenciar debe ser importado en su espacio de trabajo utilizando el mismo SRS que desea para el archivo final georreferenciado, que debe ser el mismo SRS que su espacio de trabajo. Puede que esté muy lejos de donde debería estar, si originalmente originalmente usaba un SRS diferente, pero la transformación lo moverá a la ubicación correcta.
-
Acceda a ogr2ogr a través de "Processing Toolbox: GDAL: Conversión de vectores: Convertir formato". Esto le permite seleccionar el archivo vectorial que desea georreferenciar, y su archivo de salida. En el campo "Additional creation opciones adicionales", añada un comando que especifique el tipo de transformación que que desea, y luego la línea con todos sus puntos GCP.
-
Los comandos para los diferentes tipos de transformación incluyen:
- "-orden 1" para lineal
- "-orden 2" para el polinomio de segundo orden
- "-orden 3" para el polinomio de tercer orden
- "-tps" para Thin Plate Spline.
-
Por ejemplo, el código añadido en el campo "Opciones adicionales de creación" podría tener el siguiente aspecto:
-order 2 -gcp <ungeoref_x1> <ungeoref_y1> <georef_x1> <georef_y1> -gcp <ungeoref_x2> <ungeoref_y2> <georef_x2> <georef_y2>