1
Bug Reports / Re: lines in orthomosaic when exporting in web mercator projection
« on: December 15, 2016, 08:56:56 AM »
Thanks for the update Alexey - will try it out again in 1.3 when it's released!
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
ortho_res = float(chunk.model.meta['model/resolution']) / int(chunk.model.meta["model/depth_downscale"]) * chunk.transform.scale
chunk.model.meta["model/depth_downscale"]
no longer exists, resulting in: int() argument must be a string or a number, not 'NoneType'
chunk.buildModel(surface=PhotoScan.HeightField, source=PhotoScan.DenseCloudData, face_count=PhotoScan.HighFaceCount, interpolation=PhotoScan.EnabledInterpolation)
import PhotoScan
app = PhotoScan.Application()
doc = PhotoScan.Document()
chunk = doc.addChunk()
chunk.addPhotos(image_list)
chunk.loadReferenceExif()
coord_system = PhotoScan.CoordinateSystem('EPSG::4326')
chunk.crs = coord_system
chunk.matchPhotos(accuracy=PhotoScan.HighAccuracy, preselection=PhotoScan.ReferencePreselection, tiepoint_limit=10000)
chunk.alignCameras()
chunk.optimizeCameras()
chunk.buildDenseCloud(quality=PhotoScan.MediumQuality, filter=PhotoScan.AggressiveFiltering)
chunk.buildModel(surface=PhotoScan.HeightField, source=PhotoScan.DenseCloudData, face_count=PhotoScan.HighFaceCount, interpolation=PhotoScan.EnabledInterpolation)
chunk.model.closeHoles()
chunk.model.fixTopology()
chunk.buildUV(mapping=PhotoScan.GenericMapping, count=16)
chunk.buildTexture(blending=PhotoScan.MosaicBlending, size=4096)
doc.save(path=new_project_path, chunks=[chunk])
doc = PhotoScan.Document()
doc.open(new_project_path)
chunk = doc.chunk
chunk.buildOrthomosaic()
chunk.exportOrthomosaic(ortho_path, projection=chunk.crs)
chunk.buildDem(source=PhotoScan.DenseCloudData)
chunk.exportDem(dem_path, projection=chunk.crs)
doc.save(path=project_path, chunks=[chunk])
app.quit()
import PhotoScan
app = PhotoScan.Application()
doc = PhotoScan.Document()
chunk = PhotoScan.Chunk()
doc.addChunk(chunk)
chunk.addPhotos(image_list)
chunk.loadReferenceExif()
coord_system = PhotoScan.CoordinateSystem('EPSG::4326')
chunk.crs = coord_system
chunk.matchPhotos(accuracy=PhotoScan.HighAccuracy, preselection=PhotoScan.ReferencePreselection, tiepoint_limit=10000)
chunk.alignCameras()
chunk.optimizeCameras()
chunk.buildDenseCloud(quality=PhotoScan.MediumQuality, filter=PhotoScan.AggressiveFiltering)
chunk.buildModel(surface=PhotoScan.HeightField, source=PhotoScan.DensePoints, face_count=PhotoScan.HighFaceCount, interpolation=PhotoScan.EnabledInterpolation)
chunk.model.closeHoles()
chunk.model.fixTopology()
chunk.buildUV(mapping=PhotoScan.GenericMapping, count=16) # try different mapping modes
chunk.buildTexture(blending=PhotoScan.MosaicBlending, size=4096)
chunk.exportOrthophoto(ortho_path, color_correction=False, blending=PhotoScan.MosaicBlending, projection=chunk.crs)
chunk.exportDem(dem_path, projection=chunk.crs)
doc.save(project_path)
app.quit()
import PhotoScan
import glob
images = glob.glob('/path/to/project/directory/images/*.jpg')
ouput_path = '/path/to/project/directory/'
app = PhotoScan.Application()
doc = PhotoScan.Document()
chunk = doc.addChunk()
chunk.addPhotos(images)
chunk.loadReferenceExif()
coord_system = PhotoScan.CoordinateSystem('EPSG::4326')
chunk.crs = coord_system
chunk.matchPhotos(accuracy=PhotoScan.LowAccuracy, preselection=PhotoScan.ReferencePreselection, tiepoint_limit=10000)
chunk.alignCameras()
chunk.optimizeCameras()
chunk.buildDenseCloud(quality=PhotoScan.LowQuality, filter=PhotoScan.AggressiveFiltering)
chunk.buildModel(surface=PhotoScan.HeightField, source=PhotoScan.DenseCloudData, face_count=PhotoScan.HighFaceCount, interpolation=PhotoScan.EnabledInterpolation)
chunk.model.closeHoles()
chunk.model.fixTopology()
chunk.buildUV(mapping=PhotoScan.GenericMapping, count=4)
chunk.buildTexture(blending=PhotoScan.MosaicBlending, size=4096)
doc.save(path=ouput_path + 'project.psx', chunks=[chunk])
doc = PhotoScan.Document()
doc.open(ouput_path + 'project.psx')
chunk = doc.chunk
chunk.buildOrthomosaic()
chunk.buildDem(source=PhotoScan.DenseCloudData)
chunk.exportOrthomosaic(ouput_path + 'ortho.tif')
chunk.exportDem(ouput_path + 'dem.tif')
chunk.exportPoints(ouput_path + 'points.las', source=PhotoScan.DenseCloudData, format='las')
chunk.exportModel(ouput_path + 'model.obj', texture_format='jpg', texture=True, format='obj')
app.quit()