Incomplete Orthomosaic Map

Hi guys, new user here.

I am a tree farmer, trying to inventory our fields and just getting used to the software… I have a set of images of some fields, but when I run under default settings I get an incomplete map (see image). I know the image set goes right to the field edge, so I am assuming this is because I don’t have enough overlap and I need to adjust parameters. Is this true?

Any and all support is appreciated in advance!

I can upload image files if necessary…

Task Output:

… output truncated at 500 lines …
90.
.
.100 - done.
[INFO] Starting smoothing…
[INFO] Smoothing iteration 1
[INFO] Completed smoothing to create …/var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_dem/dsm.tif in 0:00:03.786525
[INFO] Completed dsm.tif in 0:00:10.730608
[INFO] Cropping /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_dem/dsm.tif
[INFO] running gdalwarp -cutline /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_georeferencing/odm_georeferenced_model.bounds.gpkg -crop_to_cutline -co NUM_THREADS=1 -co BIGTIFF=IF_SAFER -co BLOCKYSIZE=512 -co COMPRESS=LZW -co BLOCKXSIZE=512 -co TILED=YES /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_dem/dsm.original.tif /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_dem/dsm.tif --config GDAL_CACHEMAX 40.7%
Creating output file that is 3017P x 2114L.
Processing input file /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_dem/dsm.original.tif.
Using internal nodata values (e.g. -9999) for image /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_dem/dsm.original.tif.
Copying nodata values from source /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_dem/dsm.original.tif to destination /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_dem/dsm.tif.
0
.
.
.
10
.
.
.
20
.
.
.
30
.
.
.
40
.
.
.
50
.
.
.
60
.
.
.
70
.
.
.
80
.
.
.
90
.
.
.
100 - done.
[INFO] Finished odm_dem stage
[INFO] Running odm_orthophoto stage
[INFO] running /code/build/bin/odm_orthophoto -inputFile /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_texturing_25d/odm_textured_model_geo.obj -logFile /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_orthophoto/odm_orthophoto_log.txt -outputFile /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_orthophoto/odm_orthophoto.png -resolution 20.0 -outputCornerFile /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_orthophoto/odm_orthophoto_corners.txt
[INFO] Creating GeoTIFF
[INFO] running gdal_translate -a_ullr 578577.317386 4901163.05501 578905.144443 4900930.79773 -co NUM_THREADS=1 -co BIGTIFF=IF_SAFER -co BLOCKYSIZE=512 -co COMPRESS=DEFLATE -co BLOCKXSIZE=512 -co TILED=YES -co PREDICTOR=2 -a_srs “+proj=utm +zone=17 +datum=WGS84 +units=m +no_defs +type=crs” --config GDAL_CACHEMAX 40.65% /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_orthophoto/odm_orthophoto.png /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_orthophoto/odm_orthophoto.tif > /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_orthophoto/gdal_translate_log.txt
[INFO] Cropping /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_orthophoto/odm_orthophoto.tif
[INFO] running gdalwarp -cutline /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_georeferencing/odm_georeferenced_model.bounds.gpkg -crop_to_cutline -co NUM_THREADS=1 -co BIGTIFF=IF_SAFER -co BLOCKYSIZE=512 -co COMPRESS=DEFLATE -co BLOCKXSIZE=512 -co TILED=YES -co PREDICTOR=2 /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_orthophoto/odm_orthophoto.original.tif /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_orthophoto/odm_orthophoto.tif --config GDAL_CACHEMAX 40.65%
Using band 4 of source image as alpha.
Creating output file that is 6384P x 4472L.
Processing input file /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb/odm_orthophoto/odm_orthophoto.original.tif.
0
.
.
.
10
.
.
.
20
.
.
.
30
.
.
.
40
.
.
.
50
.
.
.
60
.
.
.
70
.
.
.
80
.
.
.
90
.
.
.
100 - done.
[INFO] Finished odm_orthophoto stage
[INFO] No more stages to run
[INFO] MMMMMMMMMMMNNNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNMMMMMMMMMMM
[INFO] MMMMMMdo:…—…/sNMMMMMMMMMMMMMMMMMMMMMMMMMMNs/…—…:odMMMMMM
[INFO] MMMMy-.odNMMMMMNy//mMMMMMMMMMMMMMMMMMMMMMMm//hNMMMMMNdo.-yMMMM
[INFO] MMN/sMMMMMMMMMNNMm/yMMMMMMMMMMMMMMMMMMMMy/mMNNMMMMMMMMNs/MMM
[INFO] MM/ hMMMMMMMMNs.+MMM/ dMMMMMMMMMMMMMMMMMMh +MMM+.sNMMMMMMMMh +MM
[INFO] MN /MMMMMMNo/./mMMMMN :MMMMMMMMMMMMMMMMMM: NMMMMm/./oNMMMMMM: NM
[INFO] Mm +MMMMMN+ /MMMMMMM-MMMMMMMMMMMMMMMMMM-MMMMMMM: oNMMMMM+ mM
[INFO] MM…NMMNs./mNMMMMMMMy sMMMMMMMMMMMMMMMMMMo hMMMMMMMNm/.sNMMN-MM [INFO] MMd:mMNomMMMMMMMMMy:MMMMMMMNmmmmNMMMMMMN:hMMMMMMMMMdoNMm-dMM [INFO] MMMm:.omMMMMMMMMNh/ sdmmho/.-``-/sddh+ /hNMMMMMMMMdo.:mMMM [INFO] MMMMMd+--/osss+:-:/ :- .ym+ hmo``:-` `+:-:ossso/-:+dMMMMM [INFO] MMMMMMMNmhysosydmNMo /ds`/NMM+ hMMd..dh. sMNmdysosyhmNMMMMMMM [INFO] MMMMMMMMMMMMMMMMMMMs .:-:``hmmN+ yNmds -:.:`-NMMMMMMMMMMMMMMMMMM [INFO] MMMMMMMMMMMMMMMMMMN.-mNm- //:::. -:://: +mMd`-NMMMMMMMMMMMMMMMMM [INFO] MMMMMMMMMMMMMMMMMM+ dMMN -MMNNN+ yNNNMN :MMMs sMMMMMMMMMMMMMMMMM [INFO] MMMMMMMMMMMMMMMMMM`.mmmy /mmmmm/ smmmmm``mmmh :MMMMMMMMMMMMMMMMM [INFO] MMMMMMMMMMMMMMMMMM``:::- ./////. -:::::` :::: -MMMMMMMMMMMMMMMMM [INFO] MMMMMMMMMMMMMMMMMM:`mNNd /NNNNN+ hNNNNN .NNNy +MMMMMMMMMMMMMMMMM [INFO] MMMMMMMMMMMMMMMMMMd`/MMM.`ys+//. -/+oso +MMN.`mMMMMMMMMMMMMMMMMM [INFO] MMMMMMMMMMMMMMMMMMMy /o:- `oyhd/ shys+ `-:s-`hMMMMMMMMMMMMMMMMMM [INFO] MMMMMMMMNmdhhhdmNMMM` +d+ sMMM+ hMMN:`hh- sMMNmdhhhdmNMMMMMMMM [INFO] MMMMMms:::/++//::+ho .+- /dM+ hNh- +/` -h+:://++/::/smMMMMM [INFO] MMMN+./hmMMMMMMNds- ./oso:.``:. :-``.:os+- -sdNMMMMMMmy:.oNMMM [INFO] MMm-.hMNhNMMMMMMMMNo`/MMMMMNdhyyyyhhdNMMMM+`oNMMMMMMMMNhNMh.-mMM [INFO] MM:`mMMN/-sNNMMMMMMMo yMMMMMMMMMMMMMMMMMMy sMMMMMMMNNs-/NMMm`:MM [INFO] Mm /MMMMMd/.-oMMMMMMN :MMMMMMMMMMMMMMMMMM-`MMMMMMMo-./dMMMMM/ NM [INFO] Mm /MMMMMMm:-`sNMMMMN :MMMMMMMMMMMMMMMMMM-`MMMMMNs`-/NMMMMMM/ NM [INFO] MM:`mMMMMMMMMd/-sMMMo yMMMMMMMMMMMMMMMMMMy sMMMs-/dMMMMMMMMd`:MM [INFO] MMm-.hMMMMMMMMMdhMNo`+MMMMMMMMMMMMMMMMMMMM+`oNMhdMMMMMMMMMh.-mMM [INFO] MMMNo./hmNMMMMMNms--yMMMMMMMMMMMMMMMMMMMMMMy--smNMMMMMNmy/.oNMMM [INFO] MMMMMms:-:/+++/:-+hMMMMMMMMMMMMMMMMMMMMMMMMMNh+-:/+++/:-:smMMMMM [INFO] MMMMMMMMNdhhyhdmMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMmdhyhhmNMMMMMMMM [INFO] MMMMMMMMMMMMMMMNNNNNMMMMMMNNNNNNMMMMMMMMNNMMMMMMMNNMMMMMMMMMMMMM [INFO] MMMMMMMMMMMMMh/-...-+dMMMm......:+hMMMMs../MMMMMo..sMMMMMMMMMMMM [INFO] MMMMMMMMMMMM/ /yhy- sMMm -hhy/ :NMM+ oMMMy /MMMMMMMMMMMM [INFO] MMMMMMMMMMMy /MMMMN` NMm /MMMMo +MM: .` yMd :MMMMMMMMMMMM
[INFO] MMMMMMMMMMM+ sMMMMM: hMm /MMMMd -MM- /s h.d- -MMMMMMMMMMMM
[INFO] MMMMMMMMMMMs +MMMMM. mMm /MMMMy /MM. +M/ yM: MMMMMMMMMMMM [INFO] MMMMMMMMMMMN- smNm/ +MMm :NNdo .mMMoMM+/yMM/ MMMMMMMMMMMM [INFO] MMMMMMMMMMMMNo- :yMMMm :sNMMM sMMMMMMM+ NMMMMMMMMMMM
[INFO] MMMMMMMMMMMMMMMNmmNMMMMMMMNmmmmNMMMMMMMNNMMMMMMMMMNNMMMMMMMMMMMM
[INFO] OpenDroneMap app finished - Fri Jan 31 15:20:43 2020
Postprocessing: /var/www/data/316b1a83-f95d-425f-a799-93f44bb06ddb

Computing source raster statistics…

0
.
.
.
10
.
.
.
20
.
.
.
30
.
.
.
40
.
.
.
50
.
.
.
60
.
.
.
70
.
.
.
80
.
.
.
90
.
.
.
100 - done.

0
.
.
.
10
.
.
.
20
.
.
.
30
.
.
.
40
.
.
.
50
.
.
.
60
.
.
.
70
.
.
.
80
.
.
.
90
.
.
.
100 - done.

0
.
.
.
10
.
.
.
20
.
.
.
30
.
.
.
40
.
.
.
60
.
.
.
70
.
.
.
80
.
.
.
90
.
.
.
100 - done.

Generating Base Tiles:
0
.
10
.
.
.
20
.
.
.
30
.
.
.
40
.
.
.
50
.
.
.
60
.
.
.
70
.
.
.
80
.
.
.
90
.
.
.
100

Generating Overview Tiles:
0
.
.
.
10
.
20
.
.
.
30
.
.
.
40
.
.
.
50
.
.
.
60
.
.
.
70
.
.
.
80
.
.
.
90
.
.
.
100

Generating Base Tiles:
0
.
10
.
.
.
20
.
.
.
30
.
.
.
40
.
.
.
50
.
.
.
60
.
.
.
70
.
.
.
80
.
.
.
90
.
.
.
100

Generating Overview Tiles:
0
.
.
.
10
.
.
.
20
.
.
.
.
.
40
.
.
.
50
.
.
.
60
.
.
.
70
.
.
.
80
.
.
.
90
.
.
.
100

Found point cloud: odm_georeferencing/odm_georeferenced_model.laz

Scanning input

1/1: odm_georeferencing/odm_georeferenced_model.laz

Density estimate (per square unit): 5.65477

Threads: [1, 4]

Output:
Path: entwine_pointcloud/
Data type: laszip
Hierarchy type: json
Sleep count: 2,097,152

Scale: 0.01

Offset: (578741, 4901047, 158)

Metadata:
Bounds: [(578578, 4900930, 155), (578905, 4901163, 161)]
Cube: [(578577, 4900882, -7), (578907, 4901212, 323)]
Storing dimensions: [
X:int32, Y:int32, Z:int32, Intensity:uint16, ReturnNumber:uint8,
NumberOfReturns:uint8, ScanDirectionFlag:uint8,
EdgeOfFlightLine:uint8, Classification:uint8, ScanAngleRank:float,
UserData:uint8, PointSourceId:uint16, GpsTime:double, Red:uint16,
Green:uint16, Blue:uint16, OriginId:uint32
]
Build parameters:
Span: 256
Resolution 2D: 256 * 256 = 65,536
Resolution 3D: 256 * 256 * 256 = 16,777,216
Maximum node size: 65,536
Minimum node size: 16,384
Cache size: 64

Adding 0 - odm_georeferencing/odm_georeferenced_model.laz

Pushes complete - joining...

Done 0

Reawakened: 0
Saving registry…

Saving metadata…

Index completed in 00:03.

Save complete.
Points inserted: 426,324

Postprocessing: done (•̀ᴗ•́)و!

Compressing all.zip

Done!

It’s always necessary to fly an area larger than you want, but quick question: what does your odm_orthophoto.original.tif look like?

Thanks for responding. Where do I find this file? I can find two odm_orthophoto. One is TIFF and the other is PNG, neither are original and both are cut/cropped.

If you download all.zip you can extract this file from the odm_orthophoto directory.

I’m sorry, I don’t see it. This is what it looks like for me: image

image

At this point, I believe we simply did not take enough images with the drone, with enough overlap.

Try the “Forest” preset when processing. It might be that there are not enough features between images. Also increasing overlap would help.

I will try this on Monday, thanks!