Jump to content

Overlaying Large Models And Survey Over Drone Photos


ritchiemellor
 Share

Recommended Posts

Hello everyone, new here and am hoping for a little advice, I have looked for various solutions for this and am at a bit of a loss as I cant find either a tutorial or a program that seems to fit what I after.

 

 

So, I am a land surveyor and also do surface modelling of quantity calculation. This means that I am generating 3D site models of both topographical data and also the design profile of the site. This is done as part of the work and getting into the likes of 3DS or Cinema is not an issue for me. The problem is in the correct generation of both the camera position and settings, which I am struggling to match using the tools in these progs.

 

 

I can get a working camera position to drop in geometry and localised models, but as my models effectively cover an extremely large portion of the site, its not possible to get a match that works over the entire scheme. I have tried lens correction in photoshop first and this only seems to make the matter worse, so I am actually at a bit of a loss. If I can get a working solution then I'm happy to move my workflow to a new program. At present I am going from my survey package, outputting to AutoCAD and going from there.

 

 

 

 

The attachments show the original photo, the CAD output and the final render.

 

 

My workflow at present is

 

 

1. Set background and use camera calibrator (usually a grid due to the lack of right angles) in Cinema to get an approximate position.

2. Move model origin to point definable on photo (which is based on the topographical lines as reference point).

3. Rotate and scale uniformly.

 

 

What I am then having to do is basically scale the drawing in each axis and eye it in to suit. I am still using the topo survey data at this point for reference.

 

 

Coming from an AutoCAD background this obviously just doesn't sit well with me, and I cant seem to get the Campoints thing working in Max due to the fact that generally there are not huge elevation changes on the sites, or maybe I am just doing it wrong???

 

 

Ideally I would love to be able to pepper the photograph with a load of reference marks, and then assign an X,Y,Z value for each of the references. Surely that would be enough to calculate the camera position and settings?

 

 

 

 

Anyway, sorry ifs a long post, but all help appreciated, especially from those I guess that are used to overlaying housing development masterplans over aerial images.

 

 

Thanks in advance

 

 

Ritchie

Drone-Pic.jpg

CAD-Output.jpg

Final.jpg

Link to comment
Share on other sites

Sounds like you're on the right path. The trick is to get your 3D camera in the same spot the drone was. In cases like these I usually capture the site in Sketchup, which provides a reasonably accurate textured terrain. Make sure you grab the area directly under where your drone was as well. Use the GPS coordinates of your backplate photo (check the EXIF data?) to get your drone's location and use your favorite geolocating tool (Google Maps) to plot that point on a map. In Max, import your Sketchup terrain, put a Physical Camera over the same spot, move it to the same height above the ground, and modify the Physical Camera film/sensor size to match the image sensor size of your drone's camera. Use the drone photo as your viewport background. As long as you have some 3D cad linework that matches things in the photo (edge of pavement, curb lines, etc), it should be mostly a matter of pointing the camera in the right direction with some minor adjustments for location and rotation to get your cad linework and Sketchup terrain to match the photo. Sometimes I place a bunch of tall cylinders where telephone poles are on the Sketchup terrain to add some more reference points when lining up the camera. At the height your photo is at, pinpoint accuracy is not critical.

 

Hope that helps.

Link to comment
Share on other sites

Thanks for replying Scott. I think some of this might be just me reprogramming my brain to work within the different environment.

 

 

Never thought about the use of Sketchup and the likes, will definitely give that a go.

 

 

Would you think that I don't bother with lens correction in photoshop first?

Link to comment
Share on other sites

The C4D camera calibrator CAN get very accurate results, but as you say, it needs some parallel lines and one known length.

 

Try creating an in-perspective rectangle over the photo in Photoshop by drawing between known points across the site--for example, a feature in the fore draws back to a certain house's south corner. Remember to account for the differences in topo height. You can do this over a CAD plan or satellite photo. With that, you can get a really accurate camera position in Cinema. Remember to use the generation of the camera-mapped texture to begin to model some of the features in the photo, so you have that to perfect scale and rotation to fit the real-world condition and additional modeled content.

 

There's more to the details of the work process, ask more questions if you need.

Link to comment
Share on other sites

I don't have any experience with C4D, so yeah, what Ernest said. In my experience, correcting the photo before you camera match will make the match a lot more difficult if not impossible. In Max, the Physical Camera has a lens distortion setting that can induce barrel / pincushion distortion that you can tweak to match that of your photo. After you composite, then you can do all the lens correction you want.

Link to comment
Share on other sites

Thanks guys, I am going to have a play with this. In 3DS I think I have maybe figured out the Camera Match in 3DS as I managed to get a solve for 2px, however and looking through the camera it aligned perfectly. However, I don't know what I did, because I was playing around trying to get the renderer working with the environment (same image set to screen as per the help) etc... the it kind of shifted, didn't look right at all any more.

 

 

I figured I would just try again, so ran through and sorted all of the CamPoints and managed a solve again but just couldn't get the match. The attachment shows what is happening.

 

 

If it works, the 3DS solution is what I am looking for, but then moving the camera to Cinema. Or just learn Max I guess!!

Through-cam.jpg

Link to comment
Share on other sites

Hi Chris, I turned off safe frames and it seemed to do a weird stretch, but then it worked and rendered okay. I had sent the render output to the same resolution. Again, I'm new to this, and Ernest, I know Cinema more than MAX (which isn't saying much), but the more dimension / coord system way that MAX does this seems to work better for me. I am not artistic really in any way, more mathematical in my approach. Its annoying that this type of function isn't available within C4D!!!

Link to comment
Share on other sites

Sorry Ernest, I didn't think you were, didn't mean it if my reply came across that way. Believe me, the help is greatly appreciated.

 

I'm meaning the function to be able to calibrate a camera via coordinated positions like the Max CamPoint feature. With my site having large changes in elevation in some cases, it's not like a can set a number of grids up and shift the elevation of each to suit, or even get a working rectangle in some cases.

Link to comment
Share on other sites

The C4D camera calibration is based on lines and grids. When it works, it is very accurate. But it fails in some circumstances. I don't know the MAX feature, but from your screencap it looks like you put a series of known points in as XYZ coords. and from enough of those you resolve the camera position. Is that correct?

 

I think that can be done with the C4D camera tracker (meaning for video), I have to check on that. If so, it would also work on a still. If NOT, I will put in a request for the additional functionality. I use the camera matching all the time as a base for photo modeling ans setting up a quick background scene from existing.

Link to comment
Share on other sites

As I novice, what appealed to me with cinema is the ease of use. The current system is great for things that only take up part of the frame, whereas with what I am trying to do, it's covering a large expanse of ground as a single model, and it just doesn't deal with it well, which is a shame.

 

That is correct regarding the Max system. It can use the same type of techniques as Cinema, but adds the ability to fix points to models and then related those to specific parts of the background. As a surveyor, I can ID specific X,Y, and Z values in AutoCAD and then enter the values directly into Max, then it's a case of saying which point refers to the correct part of the image. It's so simple for someone from an engineering background rather than just eyeing it in, which is what I had been having to do.

 

I am realising though that despite my initial post, some of the issue has been user error, but the help doesn't really cover things in depth or explain the concepts fully.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...