I have an aerial image that already has geo-spatial information (already georeferenced), but the original georeferenced location is very rough (not accurate). I wanted to create ground control points and georeference the image again to a more accurate location. Do I have to remove the spatial information of the original image and make it as a raw image first? Or can İ make GCPs directly on the original image (which is already georeferenced)?
Already georeferenced image can be georeferenced with QGIS georeferencer without removing old georeference info first. However, georeferencer does not update the old image but it writes out a new image.
It is also possible to update the georeference of the image without writing the pixels again but in this case the old georeference information must be wiped first for example with gdal_edit utility https://gdal.org/programs/gdal_edit.html. It is a Python script and therefore GDAL Python bindings must be installed on the computer. Usage:
gdal_edit -unsetgt image.tif
This works if GDAL is installed with OSGeo4W but otherwise it may be necessary to run the script as
python [path_to]gdal_edit.py -unsetgt image.tif
New ground control points can be added to the image with the same gdal_edit utility.
If GDAL Python utilities are not available and QGIS georeferencer does not feel like the best tool it is also possible to make a clean copy of the image with gdal_translate:
gdal_translate -of GTiff -co profile=baseline --config GDAL_PAM_ENABLED NO input.tif clean_out.tif
In the command the config option
--config GDAL_PAM_ENABLED NO prevents writing of an additional .aux.xml file that stores the georeferencing info and other metadata that was removed from the GeoTIFF. That may have an affect on further processing. Instead of using the config option it is also possible just to delete the .aux.xml file.