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 - jrp

Pages: [1] 2 3 ... 5

I have tried networking processing on linux nodes only which completes good.

I have also now tried processing on the windows node only, and this completes fine as well.

(I used the pause node option in network monitor)

Only when it’s a mix of linux and windows nodes does the problem show up. This is consistent with my idea that the Linux client is resolving the symlinks and passing the resolved versions to windows, which can’t find them.

Path is correct and absolute paths is off.


General / Re: interpretation of check point errors
« on: January 11, 2024, 04:02:15 PM »

I usually work on small objects, or occasional buildings, not landscpes, so I'm not an expert. If I got errors that small on a house, I'd feel happy about it.

For a site of ~500m x ~1000m with a ~25m elevation change, having 3 centemeters of error is around 0.003%, or 1 part in ~30000 -- I can't think of any method I have to measure anything that accurately.

Ask yourself how large an error would you accept the offset of any point to be (by that I mean the simple distance between where Metashape thinks any location is, versus the real world) -- measured in meters.

If any of the errors in the error column are above that, you may have an issue.

That's the method I use, and it seems to work for me, others who work with landscapes may have a more refined method.

General / Re: Error increasing after inputting marker accuracy
« on: January 10, 2024, 02:58:47 PM »
Are you able to post some screenshots of the reference panel in diferent states? (ideally with a good and bad project)

General / Re: Metashape Network Processing
« on: January 10, 2024, 02:56:24 PM »
I have a similar setup, but have never seen this exact situation.

I did once have a situation where in windows it would hang when I scrolled and selected text in the console window, but it started right after, so I didn't note the details.

Does the console window say anything interesting?

General / Re: Error increasing after inputting marker accuracy
« on: January 09, 2024, 01:05:41 PM »
By the sounds of this, you are more experianced than I am with GCPs anyway, but incase it's useful:

I've seen loosly similar results when I've had a point with a substantial error in it, have you checked all the input data for anomalies? Best place to start looking would be to sort the GCPs by error, and turn them off one or two at a time starting with the worst ones then refresh, and see if everything pops into place.

I've seen it where the turned off point is then reported to have an error of nearly exactly a meter, and it turns out to be a simple typo. (university, student projects, we usually end up with the points written down with a pencil in a notebook as it's less of a learning curve)

Try "reference" panel, then the "Export reference" button at the top.

This will output a CSV file of the numbers. Not sure if you have anything that can process this.

At least the other 3 nodes are still available for other jobs. :)

Thats more depth than I've gone into with network processing, so you are likely way ahead of me in every respect, but I do note the set capability option in network monitor, if you turned off CPU on the slower machines, this could do part of what you are after. ... but would liekly break other things.

Have you found much benfit from ram speed? What little exploring I've done with this has indicated that ram sppeds seem to have little affect on performance (I think I played with XMP profiles once, years ago, and saw no change whatso ever.) this is contrary to what logic says, so I was never convinced I was testing it right.

General / Re: Multiple Projects with Batch Process
« on: January 08, 2024, 02:40:37 PM »
I know somone that gets around this by putting a bunch of objects in the same project as separate chunks so that it is easier to manage in the short term, but it always felt like a bit too much trouble for me. -- this was a few years back.

if using pro: You could also bodge the network processing system to do something similar with everything running localy, but that's even more trouble if you arn't already doing network processing. Bit of a learning curve.

General / Re: Turntable Object Process Flow
« on: January 08, 2024, 02:36:58 PM »
I do some very similar work to what you are doing, and I use a variety of workflows similar to those discussed on dificult objects that won't behave, but I actually find that the following works more often than not with good photo sets:

1) import photos all into a single chunk
2) align
3) build dense cloud
4) manually chop out the unhelpful bits.
5) process as normal with any degree of optimisation you feel liek that day

Step 4 benifits from propping the object up off the turntable factionally with little bits of foam etc, well underneeth the base of the object so that camera can't see them.

When the object isn't quite right, or there is minor misalignment, I sometimes find that this model is close enough for masks from object before starting again.

If I remember right, generate masks from background is designed for dealing with situations (for example) where you take a photo of the turntable without the object on it, and use that as the input. It takes the colour diference between "background image", and the actual image, masking out those that are similar. With a turntable, it will usually get a little confused that the turntable is moving, but it will do a good job on the wall behind and an ok job on the turntable. good oclour contract between object and background is needed otherwise you risk bits of the object vanaishing.

I believe it's asking for a folder containing the background image file, then separatly a filename within that folder -- this is so that other workflows where the background iamge is diferent for every image can be managed.

A while back we used to use this to create a primative "background from how close to white the pixel is" by feeding in a pure white image of the same resolution as the images, and tweaking the tolerance.

General / Re: scale bar size keeps changing from my input
« on: January 08, 2024, 02:15:52 PM »
If I understand right, you are concerned that -0.000114 and 0.000078 etc are not 0.

This data looks exactly how I would expect a good clean data set with well used scalebars to look.

Every measurment of any real world object has errors, including the measurment of scale bars.

Metashape makes a model of the scene, then takes an average of the measurments it takes of the scale bars, then scales the model to that average. Note that some of the erros are positive and some are negitve, and adding them up, they all come out at around 0.

The largest error shown here is around 1 in 1000 which is better than I could do with a ruler and my eyes; and may be better than the printing process the scales were made with.

Update (and sorry for the double post):

I’ve managed to get it to show the issue the other way round, where, (by using priorities again) I start processing the job on the linux node, then transfer it to the windows node, the windows machine gives the message (with the server name removed)

2024-01-08 10:01:03 BuildModel.prepairDepthMaps (3/4): subtask = prepairDepthMaps, surface_type = Arbitrary, interpolation = Enabled, face_count = Low, source_data = Depth maps, vertex_colors = on, volumetric_masks = off, blocks_crs = Local Coordinates (m), working_folder = //[snip].uk/groups/photogrammetry/test2/test/test1a1.files/0/0/model.tmp
2024-01-08 10:01:03 Error: Can't open file: The network name cannot be found (67): //[snip].uk/groups/photogrammetry/test2/test/test1a1.files/0/0/model.tmp/depth_maps_pyramids/partitions.groups

Interestingly, the /groups/… bit is wrong, and Metashape should theoretically not even know that a folder named “groups” exists, but that is the actual location that the data exists at on the server. This is hidden from windows at the samba level, so the windows machine cannot be the source of the issue. On Windows Metashape is called with:

C:\Program Files\Agisoft\Metashape Pro>"C:\Program Files\agisoft\metashape pro\metashape.exe" --node --dispatch [snip].uk --root \\[snip].uk\jrp

Samba mounts \\[snip].uk\jrp to /home/jrp/ on the server

On Linux, Metashape is called as:

/opt/metashape-pro/ --worker --host [snip].uk -platform offscreen --root /home/saceimg/

And both user accounts have symlinks to the actual data:
/home/jrp/photogrammetry > /groups/photogrammetry/
/home/saceimg/photogrammetry > /groups/photogrammetry/

On the Linux processing nodes, autofs and nfs is used to get the /groups/photogrammetry folder on the node to point at the /groups/photogrammetry folder on the fileserver.

My current theory is that this is a Metashape bug: the Linux node is somehow resolving the full path of the files it’s working on, instead of using the path via the symlink as I had expected it should. It’s then passing that full path back to the windows node, that can’t understand it. Though I’m not sure that explains everything.

Do remember that processing works part way, so this is not a simple path issue.

I suspect I can work around the issue using either bind mounts, or adding a second symlink for windows to use to the “groups” folder if I have to.  But those are both far from ideal given the setup here.

I’m 90% sure that this configuration worked fine with mixed Windows/Linux processing nodes last time we tried it a few years back. It would be difficult for me to confirm it was actually a symlink I used, but I can’t think of any other way I could have done it.


General / Re: Linux processing and graphics cards/drivers
« on: January 05, 2024, 07:34:32 PM »
How did you go with this? I'm just assembling a server from a hand me down gaming PC from a buddy (nothing fancy, just Nvidia 980 and an i7 CPU with 32gb ram). Am about to install Ubuntu 22.04 LTS on it.

After a massive delay for unrelated reasons, it seems pretty good. Ubuntu 22.04.1 with a 3070 card with really simple instalation instructions here:

I expect the 40 series will work just as well.

For purposes unrelated to agisoft, I recently installed a radeon 6600 in another machine running recent ubuntu, and the experiance was near identical. Only diference being that hte drivers are open source with the advantages that brings. Have not long term tested either for stability.

How did your's go?

Network processing Error: Can't remove folder: parent folder mismatch

I’ve just updated everything to 2.1.0 and was excited to get network processing back up and running (having disbanded the setup during covid). Setup is as follows:

Clients run windows.
Clients have basic bat script on the desktop so that users can run underused clients as processing nodes.
We are running a pair of new linux servers as processing nodes, though we used to have an old linux server running as a processing node too sucsessfully.
The “server” is the same physical machine as the file server, which is a linux machine with samba and zfs hosting the data.
(there is a quirk in the current setup in that as part of the new server deployment process, windows machines are temporarily connecting into an old linux server with samba, and nfs is mapping the shared folders on the actual new server.)

Prior to the new server installs, I had this all working fine, and I have a fairly good understanding of how it’s supposed to work.

I connected everything, ran a windows client using it’s bat script, created a new project using the same machine, then tested network processing.

Image alignment worked great. Then I did model from depth maps, it almost finished then it repeatedly gave:
failed #2 BuildModel.cleanup (1/1): Can't remove folder: parent folder mismatch

This was running on one of the linux nodes. When I used node priorities to shift the job to the windows node, it completed fine soon after.

It’s clear that the paths are set (at least mostly) right as the linux nodes did most of the processing just fine.

Any ideas on what’s going on here?

Console output on the node is (repeated every few seconds forever):

2024-01-05 15:18:34 processing failed in 0.211594 sec
2024-01-05 15:18:35 BuildModel.cleanup (1/1): subtask = cleanup, surface_type = Arbitrary, interpolation = Enabled, face_count = High, source_data = Depth maps, vertex_colors = on, volumetric_masks = off, blocks_crs = Local Coordinates (m), working_folder = /home/saceimg/photogrammetry/test2/test/test1a1.files/0/0/model.tmp
2024-01-05 15:18:35 Peak memory used: 4.80 GB at 2024-01-05 15:15:48
2024-01-05 15:18:35 deleting all temporary files...
2024-01-05 15:18:35 Error: Can't remove folder: parent folder mismatch

I suspected a permissions issue as there are different users in use, but I tried waiting until it crashed, then using a linux node, logged in as the correct user, deleted all of the data in the folder mentioned, and no permissions showed. Interestingly with the model.tmp folder deleted, it continued with the same error message, but was fine when the job was passed back to windows.


General / Server and processing node as systemd services in linux?
« on: March 07, 2022, 05:34:51 PM »

I found this article on how to run software as sevices in linux, this looks like exactly the sort of thing that I'm keen to do with both my server and processing node machines. I could go through the instructions listed on that site myself, but I don't know exactly how the software behaves, or what the security implications are for this in detail.

I havn't seen any advice for running metashape in any way other than running it manually at the shell prompt, which works just fine, but requires things like having to manually reset things after a power outage or other system restart.

Has anyone else experimented with this (or other methods), and does anyone have any advice on how to implement this?


General / Re: Multispectral and RGB cameras workflow
« on: December 18, 2021, 12:26:05 PM »
Disclaimer: I've never worked with drone data, though hope to at some point. I work with very diferent matierial.

If you have known coordinates, does that mean you have Ground Control Points?

I would likely try to get the 2 halfs of the project as separate chunks in the same project, then align the chunks using either: GCPs, automatic chunk alignment , or create manual control points if you can find some.

Pages: [1] 2 3 ... 5