Forum

Show Posts

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.


Messages - smcmurray

Pages: [1]
1
General / Re: Workflow to process the Photography of "PHANTOM 4 RTK"
« on: January 17, 2019, 02:41:59 AM »
Hi there we are currently trying to process some P4 Pro RTK data through Agisoft but we are having some issues getting it to read in the accuracies from the metadata - can anyone that has it working please share their workflow ? @Alexey Pasumansky is this working in 1.5.0 release ?


Any help is appreciated

Regards
Steve McMurray

2
General / MAvinci Plugin and Agisoft issues
« on: January 31, 2018, 07:24:36 AM »
Hi I am trying to process a flight from my MAvinci Pro UAV using the mavinci plugin but it stops and says I have run out of RAM ? I have 64gb of RAM so not sure that is what is happening. Any help is appreciated.


3
General / Re: Custom batch process in menu on startup
« on: September 29, 2017, 05:52:45 AM »
Hi SAV

I have put that code in :
Code: [Select]
import PhotoScan
import os,re,sys

def give_me_a_name():
    doc = PhotoScan.app.document
    chunk = doc.chunk

# get the photo (.JPG) list in specified folder
def getPhotoList(root_path, photoList):
pattern = '.JPG$'
for root, dirs, files in os.walk(root_path):
for name in files:
if re.search(pattern,name):
cur_path = os.path.join(root, name)
#print (cur_path)
photoList.append(cur_path)

def photoscanProcess(root_path):
#PhotoScan.app.messageBox('hello world! \n')
PhotoScan.app.console.clear()

## construct the document class
doc = PhotoScan.app.document

## save project
#doc.open("D:\03_UAV\QCNH\170906_QCNH_Q_Rom\practise.psx")
psxfile = root_path + 'practise.psx'
doc.save( psxfile )
print ('>> Saved to: ' + psxfile)

## point to current chunk
#chunk = doc.chunk

## add a new chunk
chunk = doc.addChunk()

## set coordinate system
# - PhotoScan.CoordinateSystem("EPSG::4612") -->  JGD2000
chunk.crs = PhotoScan.CoordinateSystem("EPSG::4612")

################################################################################################
### get photo list ###
photoList = []
getPhotoList(root_path, photoList)
#print (photoList)

################################################################################################
### add photos ###
# addPhotos(filenames[, progress])
# - filenames(list of string) – A list of file paths.
chunk.addPhotos(photoList)

################################################################################################
### align photos ###
## Perform image matching for the chunk frame.
# matchPhotos(accuracy=HighAccuracy, preselection=NoPreselection, filter_mask=False, keypoint_limit=40000, tiepoint_limit=4000[, progress])
# - Alignment accuracy in [HighestAccuracy, HighAccuracy, MediumAccuracy, LowAccuracy, LowestAccuracy]
# - Image pair preselection in [ReferencePreselection, GenericPreselection, NoPreselection]
chunk.matchPhotos(accuracy=PhotoScan.LowAccuracy, preselection=PhotoScan.ReferencePreselection, filter_mask=False, keypoint_limit=0, tiepoint_limit=0)
chunk.alignCameras()

################################################################################################
### build dense cloud ###
## Generate depth maps for the chunk.
# buildDenseCloud(quality=MediumQuality, filter=AggressiveFiltering[, cameras], keep_depth=False, reuse_depth=False[, progress])
# - Dense point cloud quality in [UltraQuality, HighQuality, MediumQuality, LowQuality, LowestQuality]
# - Depth filtering mode in [AggressiveFiltering, ModerateFiltering, MildFiltering, NoFiltering]
chunk.buildDenseCloud(quality=PhotoScan.LowQuality, filter=PhotoScan.AggressiveFiltering)

################################################################################################
### build mesh ###
## Generate model for the chunk frame.
# buildModel(surface=Arbitrary, interpolation=EnabledInterpolation, face_count=MediumFaceCount[, source ][, classes][, progress])
# - Surface type in [Arbitrary, HeightField]
# - Interpolation mode in [EnabledInterpolation, DisabledInterpolation, Extrapolated]
# - Face count in [HighFaceCount, MediumFaceCount, LowFaceCount]
# - Data source in [PointCloudData, DenseCloudData, ModelData, ElevationData]
chunk.buildModel(surface=PhotoScan.HeightField, interpolation=PhotoScan.EnabledInterpolation, face_count=PhotoScan.HighFaceCount)

################################################################################################
### build texture (optional) ###
## Generate uv mapping for the model.
# buildUV(mapping=GenericMapping, count=1[, camera ][, progress])
# - UV mapping mode in [GenericMapping, OrthophotoMapping, AdaptiveOrthophotoMapping, SphericalMapping, CameraMapping]
#chunk.buildUV(mapping=PhotoScan.AdaptiveOrthophotoMapping)
## Generate texture for the chunk.
# buildTexture(blending=MosaicBlending, color_correction=False, size=2048[, cameras][, progress])
# - Blending mode in [AverageBlending, MosaicBlending, MinBlending, MaxBlending, DisabledBlending]
#chunk.buildTexture(blending=PhotoScan.MosaicBlending, color_correction=True, size=30000)

################################################################################################
## save the project before build the DEM and Ortho images
doc.save()

################################################################################################
### build DEM (before build dem, you need to save the project into psx) ###
## Build elevation model for the chunk.
# buildDem(source=DenseCloudData, interpolation=EnabledInterpolation[, projection ][, region ][, classes][, progress])
# - Data source in [PointCloudData, DenseCloudData, ModelData, ElevationData]
chunk.buildDem(source=PhotoScan.DenseCloudData, interpolation=PhotoScan.EnabledInterpolation, projection=chunk.crs)

################################################################################################
## Build orthomosaic for the chunk.
# buildOrthomosaic(surface=ElevationData, blending=MosaicBlending, color_correction=False[, projection ][, region ][, dx ][, dy ][, progress])
# - Data source in [PointCloudData, DenseCloudData, ModelData, ElevationData]
# - Blending mode in [AverageBlending, MosaicBlending, MinBlending, MaxBlending, DisabledBlending]
chunk.buildOrthomosaic(surface=PhotoScan.ModelData, blending=PhotoScan.MosaicBlending, color_correction=True, projection=chunk.crs)

################################################################################################
## auto classify ground points (optional)
#chunk.dense_cloud.classifyGroundPoints()
#chunk.buildDem(source=PhotoScan.DenseCloudData, classes=[2])

################################################################################################
doc.save()

PhotoScan.app.addMenuItem("Custom/Batch Process", give_me_a_name)

# main
folder = "D:/03_UAV/QCNH/170906_QCNH_Q_Rom"
photoscanProcess(folder)

but I get the following reply :
2017-09-29 12:43:02 MAVinci Plugin: created with MAVinci Desktop for Win (SN: 81dc6ff3d850094195d55a1eea37cbfb, Steve McMurray, Thiess Pty Ltd, smcmurray@thiess.com.au) 6.0.b53776 at 13:16:35 06.09.2017 exported for PhotoScan VERSION:1.2.6 build:2834 resourceFile:MAVinciLib_1-2
2017-09-29 12:43:02 PhotoscanVersion: 1.2.6
2017-09-29 12:43:02 MAVinci Plugin ready loaded
2017-09-29 12:43:02 Traceback (most recent call last):
2017-09-29 12:43:02   File "C:/Users/smcmurray/AppData/Local/Agisoft/PhotoScan Pro/scripts/Agisoft Batch Process 1.py", line 124, in <module>
2017-09-29 12:43:02     photoscanProcess(folder)
2017-09-29 12:43:02   File "C:/Users/smcmurray/AppData/Local/Agisoft/PhotoScan Pro/scripts/Agisoft Batch Process 1.py", line 31, in photoscanProcess
2017-09-29 12:43:02     doc.save( psxfile )
2017-09-29 12:43:02 AttributeError: 'NoneType' object has no attribute 'save'

Any ideas ?

Steve

5
General / Re: Custom batch process in menu on startup
« on: September 29, 2017, 04:26:36 AM »
Thanks SAV - I have the batch process in the .xml format that agisoft saves the batch process in - can I link this or do I need to put the process into a python script ?

Thanks in advance mate

Steve

6
Python and Java API / Re: script for batch processing
« on: September 22, 2017, 07:21:02 AM »
Any luck with this ? I am looking for something similar

7
General / Custom batch process in menu on startup
« on: September 22, 2017, 06:09:45 AM »
I have a two part custom batch process that I want to appear in my menu structure on startup so that I can use it to process my UAV data - how would I do this ?

Do I need a python script to be able to do this or would it make it easier ?

Thanks in advance
Steve

8
Thanks Alexey much appreciated - does the plugin change the depth filtering if the quality is set to lowest ?

Regards
Steve

9
Hi there we have just started using a Mavinci Pro UAV and therefore have just started using the Mavinci plugin but want to add the option to the scripting to be able to set the depth filtering to mild during the construction of the dense cloud. I have attached the two files that run the plugin if someone could have a look for me

Thanks in advance
Steve

10
General / Re: Georeferencing. Very confused. Please help
« on: June 27, 2017, 01:57:57 AM »
I disagree with the elevation issue I have used a P4 and P4 Pro extensively for stockpile surveys and the raw WGS-84 ellipsoidal height that comes through is positive as it should be. I am not sure whether this is a Nth Hemisphere thing but I doubt it SAV I am not sure why yours does this most unusual.

We have found the XYZ exif heading data in some cases can be as close as 900mm to the GCP control network that is surveyed in using traditional methods. Depends on sat config and fix.

Steve

11
General / Re: Moving Agisoft v1.3.0 from one PC to another
« on: March 23, 2017, 03:38:42 AM »
I just tried de-activating photoscan on my laptop so that I am in demo mode and entering the activation serial onto the new processing desktop and it is coming up with activation code in use ??

Is there something I am missing here ???

Thanks
Steve

12
General / Moving Agisoft v1.3.0 from one PC to another
« on: March 17, 2017, 07:10:13 AM »
I have 1.3.0 installed on a laptop and want to move the licence to a desktop PC that I have just built for processing. What steps should I take to make sure there are no licence activation issues.

Thanks in advance
Steve

13
General / Re: Creating Orthoimagery
« on: April 24, 2016, 01:07:01 PM »
I am using version 1.2.4 and have 16gb of RAM in my machine - should I be using more to generate an orthoimage ?

14
General / Creating Orthoimagery
« on: April 24, 2016, 01:43:57 AM »
Hi I have a UAV dataset of about 2200 photos that I have got to the orthoimagery stage. I have managed to get a point cloud out and create a DEM no problems but when I go to generate the orthoimage it seems to get to the very end and then flash up :cannot write image . It seems that it cannot write the final orthoimage after it has calculated it ?? I have about 30gbs of drive space do that is not the problem - any ideas

Thanks in advance
Steve

15
Bug Reports / Building Orthomosaic Version 1.2.4
« on: March 31, 2016, 01:08:57 AM »
I am using version 1.2.4 64 bit and am having trouble building an orthomosaic. I get an error saying "2016-03-31 07:57:17 Error: Can't write pyramid data"
What could be causing this error ?

Thanks in advance
Steve

Pages: [1]