Cultivation from photoscenery?

  • Hi Paul


    Ah.... so you simply tell it to add a forest at a single vertex.... will try that tomorrow...even more data for FS2 to digest...


    Steve

    Steve,


    And for any other polygons you create for cultivation: Key = Building

    Value = Industrial


    Key = building

    Value = Residential


    To add height to buildings:

    1. view the centroid lat & long in JOSM (click on polygon, this highlights it) then go to view settings, Advanced View.

    2. open you .toc file and find the lat & long - then just set the building level.


    Cheers,


    Paul

    Windows 10 64bit | iCore7-7770K| ASUS STRIX Z270E |KHX2400C15D4 - 32GB | Gigabyte Ge-Force GTX 1080Ti| SSD Intel 520 Series | 40" Philips BDM4065UC/75 4K - Oculus Rift

    Edited once, last by Kloot ().

  • Returning to Phil's original question about cultivation from photoscenery, I thought I'd just put down in writing my own experience so far. However, before I carry on, I must first give credit to Dave whitav8, who made me realise that this was do-able and gave me some lines of script to put into ScenProc.

    Hi Ian:

    Thank you very much for your post. I tried your instructions to the letter and now I'm able to easily generate a lot of trees/woodland in a matter of minutes (had to wait a bit for the first batch of processing with ScenProc -step 11- to produce the SHP file, but everything run just fine until the end!). See picture below of my sample area. I'm very satisfied with the results. Thanks again for your useful post 8)!!!.

    When selecting the area using FSET, sometimes it could include an airport, so I have a question in case you don't want to cultivate your airport with trees. In that case is there a possibility to exclude an entire area insted of deselecting the orange areas by using mouse right-clicks?.

    Cheers, Ed

  • If you get just a little familiar with the application JOSM then you can easily remove vegetation and make other adjustments like add a few buildings or streets . You read in the shape file from Scenproc, make the edits and then output into a new OSM file so that you can use with Scenproc to generate the final TOC file .

  • I agree with the above post, it took me 10 mins to work out how to use JOSM for what I needed, admittedly not a great deal as time is short for me, In my case it was the opposite to ED, I just wanted the trees within the airport boundary so I then knew I didn't end up with trees in places I didn't want them, its hell taxing round a giant oak.


    Steve

  • Hi Ian:

    Thank you very much for your post. I tried your instructions to the letter and now I'm able to easily generate a lot of trees/woodland in a matter of minutes (had to wait a bit for the first batch of processing with ScenProc -step 11- to produce the SHP file, but everything run just fine until the end!). See picture below of my sample area. I'm very satisfied with the results. Thanks again for your useful post 8)!!!.

    When selecting the area using FSET, sometimes it could include an airport, so I have a question in case you don't want to cultivate your airport with trees. In that case is there a possibility to exclude an entire area insted of deselecting the orange areas by using mouse right-clicks?.

    Cheers, Ed

    Hi Ed


    I'm glad it worked for you. I always wonder, when creating a list of instructions, whether I've left anything out that might not be obvious to the person reading them! I find the method is actually pretty accurate, with relatively few trees on roads etc. With practice the stray trees could probably be reduced even further. I don't know the answer to your specific question - but it seems others have produced a solution using JOSM, if I understand it correctly.


    Ian

  • Hi Paul


    I tries to add single trees today but with no luck. I placed a single vertex rather than a polygon but JOSM would not let me attach the preset for forest to a single vertex. it would let me add tree but this is not picked up be scenproc. Ah well guess tree planting at EGGP is finally over


    Steve

  • Returning to Phil's original question about cultivation from photoscenery, I thought I'd just put down in writing my own experience so far. However, before I carry on, I must first give credit to Dave whitav8, who made me realise that this was do-able and gave me some lines of script to put into ScenProc.




    Thanks Ian (and Dave whitav8) for the instructions for tree detection. I had initially missed the connection of the INF file and was getting zero trees detected.


    But now I am getting very pleasing results. Working with the histogram filter on Virtual Earth images gives quite realistic detection.


    I tried a number of test tiles with OSM cultivation for trees but found it a lot of effort updating the forest polygons to account for meadows and scrub in the actual tree coverage.


    I find the detection and auto generation to be far more realistic in reflecting the variable distribution of trees on a mountain slope.

    A tree or two in a scrub field or the changes in tree density with altitude would be very difficult or impossible to capture in OSM data.


    I am totally sold on detection versus OSM for trees.


    And thanks to Arno for an amazing program!!!:)


    cheers

    Stu

    i7-6700K CPU @ 4.00GHz | ASUS Z170-A | 16Gb DDR4 | Samsung SSD 950 PRO NVME M.2 256GB | Samsung SSD 850 EVO 1TB | GeForce GTX 1080 Ti on GP102-A GPU | Oculus CV1 | Windows 10

  • Hi Stu


    Glad to see that others are having success with this method - it does reflect the natural distribution of trees rather well. In remote areas forest outlines must change somewhat over time anyway, due to felling etc. According to Dave whitav8 Arno is working on a way of detecting buildings from aerial images. Now that would be something! I did try it myself using the histogram filter, repeatedly clicking on roofs - but the problem is that many roads etc are the same colour as roofs - even some parts of the forest are! What it needs is some kind of rectangular pattern recognition as well, which I imagine is what he's trying to do (though I could be wrong).

  • My main use of FS2 is soaring in the Alps so my primary goal of cultivation is to get trees on the mountain slopes.

    When you are soaring you never know where you will be up close and personal with the scenery.


    As I stated in a previous post, the tree detection functionality works quite well at matching the real tree distribution.

    However there is one issue in high mountains where the histogram that gives good detection just about everywhere will

    detect spurious vegetation in the shadows on the north face of mountain peaks. It is disconcerting to see a tree or two perched on top of a 2800M rocky crest.

    I did not want to fiddle with the histogram and lose tree detection elsewhere so I was looking for a way to eliminate the spurious trees.


    I created a separate layer in OSM for the area of interest and drew a polygon around the rocky peak just above the tree line and tagged it landuse="rock".

    Then in the SPC I used the AddAttributeIfInside and skip="yes" trick to flush the problem features before generating trees and that eliminated the problem trees.


    While in JOSM I noticed a landuse value of "alpine_forest" and that got me thinking about the more general tree cultivation issue of generic broadleaf/conifer mix for cultivation regardless of altitude. I tried adding a second polygon around the peak tagged alpine_forest and a third tagged subalpine_forest.

    That gave me 3 vague elevation contours. With a bit of scenProc fiddling I was able to generate three different zones with different species mix from the valley floor to the mountain crest.


    I think it does look better having conifers at high altitudes rather than a deciduous tree right next to a scree slope.

    It only takes a few minutes to sketch rough contours around the major mountain peaks.


    The following SPC is how I got scenProc to handle the contours


    ImportOGR|autogen_trees.shp|*|*|AUTODETECT

    PlacePointsInPolygon|*|0.0001;0.0001|1.0;1.0

    # load vegetation zone contours

    ImportOGR|vegetation_zones.osm|*|*|NOREPROJ

    AddAttributeIfInside|*|landuse="rock"|String;skip|yes

    AddAttributeIfInside|*|landuse="alpine_forest"|String;alpine|yes

    AddAttributeIfInside|*|landuse="subalpine_forest"|String;subalpine|yes

    #

    # eliminate spurious features in rock zone

    UnloadFeatures|skip="yes"

    #

    # generate conifers in alpine zone

    CreateAF2Plant|alpine="yes"|8;25|conifer

    #

    # eliminate alpine features so they don't get replanted as subalpine

    UnloadFeatures|alpine="yes"

    #

    # mixed forest in subalpine zone

    CreateAF2Plant|subalpine="yes" And FRAND >= 0.5|8;25|conifer

    CreateAF2Plant|subalpine="yes" And FRAND < 0.5|10;20|broadleaf

    #

    # eliminate subalpine features so they don't get replanted

    UnloadFeatures|subalpine="yes"

    #

    # remaining features are lower slopes or valley floor

    # mostly deciduous forest

    CreateAF2Plant|FRAND >= 0.8|8;25|conifer

    CreateAF2Plant|FRAND < 0.8|10;20|broadleaf

    ExportTOC|.\|cultivate


    cheers

    Stu


    PS see my more recent post on generated elevation contours

    i7-6700K CPU @ 4.00GHz | ASUS Z170-A | 16Gb DDR4 | Samsung SSD 950 PRO NVME M.2 256GB | Samsung SSD 850 EVO 1TB | GeForce GTX 1080 Ti on GP102-A GPU | Oculus CV1 | Windows 10

    Edited 3 times, last by lenidcamper: update ().

  • Hi Stu - thanks for that. This is now getting quite sophisticated!


    I've had a similar problem to you with lakes - which sometimes have a dark greenish tinge and can end up with trees in them if you're not careful. If you then eliminate those pixels you're also losing a bit of lake-coloured forest somewhere else. With a lake (but not really with shadows) you could simply colour it in with a different colour. Images edited with Gimp and saved as TIFs still work with Geoconvert, so I imagine they would also work with Scen Proc? I need to try it some time. I suspect many lakes would actually look better if they were coloured in. Any kind of fixed texture or pattern on water destroys the VR illusion. Until moving waves come along, a block of uniform colour is arguably preferable.


    The variation of vegetation with altitude is a great refinement.

  • 13. Use the TOC file in the normal way to cultivate your area. Because it's such a small area I have a dummy stripped down airport (with no name) at its centre. In my Maine project this small area of photo-generated cultivation is within a larger area (roughly 60 x 60 nm) cultivated using OSM data. This is how I merge my different cultivations - but you may know of a better method.


    Has anybody refined their cultivation from photoscenery process over the past 6 months?


    I recently finished using AeroScenery to download 32 squares (~30,000 sq miles) of zoom-17 scenery in Texas. I then used FSCloudPort to download/create ~10 airports and then used ScenProc to cultivate very large areas (1-4 tiles) around these airports. I'd now like to use this CFPS approach to add more trees around these airports. Any lessons learned or additional tips? One airport is near a beach - what tweak is needed to cultivate that airport with palm trees?



  • Any ideas what is causing these north-south voids in tree cultivation? I'm using the FSET histogram filter but with POINTS instead of POLYGONS to get denser tree areas.




    My SHP code looks like this ...


    ImportINF|C:\(bmp image path).inf

    SplitGrid|0.25|*|building="*"

    DetectFeatures|FTYPE="RASTER"|C:\(path)\40XS-point.tfc|String;veg|trees|NONE

    MergeGrid

    ExportOGR|FTYPE="POINT"|ESRI Shapefile|C:\(path)\40XS-point.shp|woodland


    and my TOC code looks like this ...


    ImportOGR|C:\(path)\40XS-point.shp|*|*|AUTODETECT

    CreateAF2Plant|FRAND >= 0.25|8;25|broadleaf

    CreateAF2Plant|FRAND < 0.25|10;20|conifer

    ExportTOC|C:\(path)\data|40XS-point


    I get denser tree results with the POINT approach (1.4M trees in 10nm x 10nm area) but I would have even more if I can fix these voids.


    Here are my Histogram settings ...




    BufferSize is pixel pad between trees (I dropped this down from 8 (I think) to 2)

    MinFeatureSize (was 4)

    PointDistance are pixels between created points (I dropped it from 20 to 3)

    PointDistVar - 0 puts trees in a straight line

    StandDevTolerance - was 5

  • According to my experience, I think that Toc files are limited in capacity. above a certain number of objects the buffer is full and I imagine that the last loaded objects crushed the oldest. This is very visible on files from Scenproc because trees are stored line by line (or column by column) according to the scenproc detection system.

  • is there any kind person out there who would be willing to do a screenshare with me to help me with scenproc PLEEEASE?

    i dont sleep and am up ALL hours i live in Tasmania Australia but time zones are not a problem with me