Page 1 of 7 123 ... LastLast
Results 1 to 10 of 61

Thread: Photogrammetry?

  1. #1
    Join Date
    Oct 2008
    Location
    Mojave desert
    Posts
    304

    Default Photogrammetry?

    Hi, is anyone using an photogrammetry software on opensuse?

    From what I can see, the usual suspects aren't packaged, and by usual suspects, I mean COLMAP, e-foto, openMVG, openMVS, VisualSFM, and even most of the command-line apps. COLMAP won't do me much good anyway, since it requires nvidia and cuda.

    These are available in deb-package land, but there are two problems. First, a virtualbox running ubuntu can only use 70% of your computer's resources, and you typically want all you can get for photogrammetry. The second problem is that I've tried this method and found nothing but trouble with either crash on start or failure to install due to deprecated dependencies. (I don't have much experience compiling from source, and my attempts have been stymied by those same deprecated dependencies.) The packages I've converted to rpm with alien (COLMAP and e-foto) didn't work either.

    What I have been able to find is an older version of COLMAP available as a snap that seems to work, though I can't test the most important part, the dense cloud reconstruction, because I have radeon instead of nvidia. Other photogrammetry software available as snaps doesn't seem to work for various reasons. VisualSFM for instance opens but just has squares where the text should be (like in the menu entries).

    What I have been able to find on at software.opensuse.org is micmac, a command-line tool packaged for centos. Because it's designed with as few dependencies as possible, it installs and seems to run on Tumbleweed. (I also found a blogger who's compiled patched versions of openMVG and openMVS for Fedora, but they don't work for me.) Installing software packaged for another distro isn't exactly best practice, but if there's anything native (and preferable with a GUI), I'm haven't found it. Is it there? And if not, what have you managed to compile from source?

  2. #2
    Join Date
    Oct 2008
    Location
    Mojave desert
    Posts
    304

    Default Re: Photogrammetry?

    In theory, the Python Photogrammetry Toolbox works with Python 2.7 and comes with everything else it needs (including some sample photos), from here: https://github.com/steve-vincent/photogrammetry

    So I downloaded the zip, extracted the linux folder, edited the shell script that launches the GUI with the path to which I extraced it, created a menu entry, and launched. No joy - it runs awhile and then quits with no output. Fortunately, it showed me the command it was running, so I tried that in terminal myself:

    Code:
    gef@purplebox:~/PPT/linux> python ./RunBundler.py --photos=/home/gef/PPT/models/examples/kermit --featureExtractor=siftvlf
    eat --maxPhotoDimension=1200
    Working directory created: /tmp/osm-bundler-0o8AAU
    BundlerMatching executable path: /home/gef/PPT/linux/software/bundler/bin/KeyMatchFull
    Sift executable path: /home/gef/PPT/linux/software/vlfeat/bin/glx/sift
    
    Processing photo 'kermit000.jpg':
            Extracting features with the SIFT method from VLFeat library...
    Traceback (most recent call last):
      File "./RunBundler.py", line 9, in <module>
        manager.preparePhotos()
      File "/home/gef/PPT/linux/osmbundler/__init__.py", line 158, in preparePhotos
        self._preparePhoto(photoInfo)
      File "/home/gef/PPT/linux/osmbundler/__init__.py", line 270, in _preparePhoto
        self.extractFeatures(photo)
      File "/home/gef/PPT/linux/osmbundler/__init__.py", line 337, in extractFeatures
        self.featureExtractor.extract(photo, self.photoDict[photo])
      File "/home/gef/PPT/linux/osmbundler/features/siftvlfeat.py", line 16, in extract
        subprocess.call([self.executable, "%s.jpg.pgm" % photo, "-o", "%s.key" % photo])
      File "/usr/lib64/python2.7/subprocess.py", line 172, in call
        return Popen(*popenargs, **kwargs).wait()
      File "/usr/lib64/python2.7/subprocess.py", line 394, in __init__
        errread, errwrite)
      File "/usr/lib64/python2.7/subprocess.py", line 1047, in _execute_child
        raise child_exception
    OSError: [Errno 2] No such file or directory
    
    I'm afraid I've precious little experience with either this software or with python in general, so I'm not sure how to troubleshoot errno 2 or whatever error will be next. Any ideas?

    I'm not even into 3D modelling myself, just investigating on behalf of a friend who's brand new to linux, so I'm looking for something that's straightforward to use. PPT fills the bill, if I can get it to work with your help, but I'm open to any other tool that does the same job and has a simple GUI, if you know of one that'll work.

  3. #3
    Join Date
    Jun 2008
    Location
    San Diego, Ca, USA
    Posts
    11,273
    Blog Entries
    2

    Default Re: Photogrammetry?

    It looks like you've dipped your toe into what other resources there are out there to obtain apps when they might not already be packaged in openSUSE. openSUSE has a lot of apps, but the universe of <all> apps is immensely larger than any single organization can provide.

    So, it looks like you've identified that there are deb packages, and you've found for at least one app that the project's sources are on Github and it was originally written in Python.

    That can lead you to another possible source... Apps written in python are often found in the official python repository, today called PyPi. Also, apps in PyPi are typically extremely well maintained, have the latest versions but you can also find versions written to run in older versions of Python. The app you use to access, query, manage, install, and remove apps from PyPi is called "pip" which should already be installed in your system. You can think of pip as the tool to access PyPi the same way that you use zypper to access openSUSE repositories.

    So, for instance, the following command will run the verion of pip available by default on your system, reach out to PyPi and update to the latest version from PyPi
    Code:
    pip i pip
    Just like any other command you can view the ip "help" and MAN pages.

    You may find that other apps might be written in other languages, and for many your options may be similar, so for example there are similar "official" repositories for Ruby and Perl as well.

    You should also know that although you found your app as a Snap, Snap is a user-friendly version of using Linux containers that is today infinitesimally tiny compared to what is available in Docker. So, go ahead and do a search for every one of the apps you listed and you'll probably find them all already pre-built as Docker containers (I searched 3 and found them all here)

    https://hub.docker.com/

    As you may know, Linux containers of all types run as bare metal apps, so there is zero overhead always.

    Lastly,
    I don't know where you heard about Virtualbox Guests uses only 70% of resources, that's probably very inaccurate. Since VBox is a Gen2 virtualization technology, it makes full use of hardware extensions, so the overhead isn't likely more than about 3% compared to if running in the HostOS of that machine. There are exceptions, perticularly when I/O is involved (performance varies greatly according to the virtualization technology), but CPU and RAM perform nearly the same as the HostOS. If you're talking about GPU performance, then again that will vary greatly depending on the virtualiztion technology, and will also depend greatly on what you're asking the GPU to do.

    ***********************

    Ok,
    Now after saying all that above which might lead you to prefer running pre-compiled apps,
    Regarding your specific error...

    I'd say that the simplest thing to check is to read your error literally and check whether the following file exists
    Code:
    /usr/lib64/python2.7/subprocess.py
    Also,
    You should know that the python that's installed by default in openSUSE is generally good enough to support running most apps, but often won't be enough to compile code and often won't be enough to run unusual apps. To have the full capability of the entire python libraries and apps, you should first add and configure the language library specific to your app (In this case Python 2) with the following

    Run the following command in an elevated console
    Code:
    zypper ar -f https://download.opensuse.org/repositories/devel:/languages:/python/openSUSE_Tumbleweed/ Tumblewee_Python2_repo
    And if that isn't sufficient (usually is), then install a Python from PyPi
    Recommend opening a separate Forum thread for that)

    HTH,
    TSU
    Beginner Wiki Quickstart - https://en.opensuse.org/User:Tsu2/Quickstart_Wiki
    Solved a problem recently? Create a wiki page for future personal reference!
    Learn something new?
    Attended a computing event?
    Post and Share!

  4. #4
    Join Date
    Oct 2008
    Location
    Mojave desert
    Posts
    304

    Default Re: Photogrammetry?

    Wow TSU, thanks for a thorough answer!

    I've configured docker and found some images that look promising, so I'll post back how it goes after I've had a chance to download and test. -GEF

    PS: As for 70% resources on vbox, that what the settings config tool recommends as max. For instance, I have 12GB on this host, and it throws up a warning if I allocate more than 8 to the guest. I'd think I could allocate 11, because normally my memory monitor shows around 600MB in use for just the desktop. Ironically, it's happy to allocate all 4 processors (but seems to think I have 8, and as far as I know, my amd cpu doesn't support hyperthreading).

  5. #5
    Join Date
    Jun 2008
    Location
    Podunk
    Posts
    26,823
    Blog Entries
    15

    Default Re: Photogrammetry?

    On Sun 08 Jul 2018 06:56:03 AM CDT, gfagan wrote:

    Hi, is anyone using an photogrammetry software on opensuse?

    From what I can see, the usual suspects aren't packaged, and by usual
    suspects, I mean COLMAP, e-foto, openMVG, openMVS, VisualSFM, and even
    most of the command-line apps. COLMAP won't do me much good anyway,
    since it requires nvidia and cuda.

    These are available in deb-package land, but there are two problems.
    First, a virtualbox running ubuntu can only use 70% of your computer's
    resources, and you typically want all you can get for photogrammetry.
    The second problem is that I've tried this method and found nothing but
    trouble with either crash on start or failure to install due to
    deprecated dependencies. (I don't have much experience compiling from
    source, and my attempts have been stymied by those same deprecated
    dependencies.) The packages I've converted to rpm with alien (COLMAP and
    e-foto) didn't work either.

    What I have been able to find is an older version of COLMAP available as
    a snap that seems to work, though I can't test the most important part,
    the dense cloud reconstruction, because I have radeon instead of nvidia.
    Other photogrammetry software available as snaps doesn't seem to work
    for various reasons. VisualSFM for instance opens but just has squares
    where the text should be (like in the menu entries).

    What I have been able to find on at software.opensuse.org is micmac, a
    command-line tool packaged for centos. Because it's designed with as few
    dependencies as possible, it installs and seems to run on Tumbleweed. (I
    also found a blogger who's compiled patched versions of openMVG and
    openMVS for Fedora, but they don't work for me.) Installing software
    packaged for another distro isn't exactly best practice, but if there's
    anything native (and preferable with a GUI), I'm haven't found it. Is it
    there? And if not, what have you managed to compile from source?


    Hi
    Here is a test build of openMVS;
    https://build.opensuse.org/package/s...ESTING/openMVS
    https://download.opensuse.org/reposi...1.1.x86_64.rpm

    --
    Cheers Malcolm °¿° SUSE Knowledge Partner (Linux Counter #276890)
    SLES 15 | GNOME Shell 3.26.2 | 4.12.14-23-default
    If you find this post helpful and are logged into the web interface,
    please show your appreciation and click on the star below... Thanks!


  6. #6
    Join Date
    Oct 2008
    Location
    Mojave desert
    Posts
    304

    Default Re: Photogrammetry?

    Cool, Malcolm. I'll give it a try after work. I've got a version from docker but can't get it to work (seems to crash on the step of making a folder for the output). -GEF

  7. #7
    Join Date
    Jun 2008
    Location
    Podunk
    Posts
    26,823
    Blog Entries
    15

    Default Re: Photogrammetry?

    On Mon 09 Jul 2018 08:26:03 PM CDT, gfagan wrote:

    Cool, Malcolm. I'll give it a try after work. I've got a version from
    docker but can't get it to work (seems to crash on the step of making a
    folder for the output). -GEF


    Hi
    Just working through openMVG, it takes awhile to build (1 hour
    plus on 4 cores locally...). They still need clean up, but good enough
    for a test

    --
    Cheers Malcolm °¿° SUSE Knowledge Partner (Linux Counter #276890)
    SLES 15 | GNOME Shell 3.26.2 | 4.12.14-23-default
    If you find this post helpful and are logged into the web interface,
    please show your appreciation and click on the star below... Thanks!


  8. #8
    Join Date
    Jun 2008
    Location
    San Diego, Ca, USA
    Posts
    11,273
    Blog Entries
    2

    Default Re: Photogrammetry?

    Quote Originally Posted by gfagan View Post
    Wow TSU, thanks for a thorough answer!

    I've configured docker and found some images that look promising, so I'll post back how it goes after I've had a chance to download and test. -GEF

    PS: As for 70% resources on vbox, that what the settings config tool recommends as max. For instance, I have 12GB on this host, and it throws up a warning if I allocate more than 8 to the guest. I'd think I could allocate 11, because normally my memory monitor shows around 600MB in use for just the desktop. Ironically, it's happy to allocate all 4 processors (but seems to think I have 8, and as far as I know, my amd cpu doesn't support hyperthreading).
    If you want to max resources available to your virtualized guests (or, for that matter isolated isntances like Linux containers), you can build (or dual boot) a special stripped down, minimized instance of your HostOS.

    I'd recommend something like the following to support Virtualbox (and to support VBox you likely need a full Desktop. If you used a Linux container or other virtualization, there's a good chance you could install your HostOS either headless or running only a Window Manager, with no Desktop Manager.

    openSUSE 15,
    Installed in text (server) mode or running only openbox or icewm.
    If Virtualbox is your choice for virtualization, then you can install XFCE, LXDE or LXQt as your Desktop. With these Desktops, you'll need approx 2GB RAM allocated to your HostOS but you might be able to experiment with less.
    If you can run Virtualbox without VBox virtual manager (ie manage your Guests entirely with command line),
    You might be able to run your HostOS without a graphical Desktop and allocate only 768MB-1GB to your HostOS.

    For any of the above possible configurations, your Guests can be allocated everything that's left... and in almost all cases that's vastly more than 70% of total system resources, no matter which specific resource you measure.

    TSU
    Beginner Wiki Quickstart - https://en.opensuse.org/User:Tsu2/Quickstart_Wiki
    Solved a problem recently? Create a wiki page for future personal reference!
    Learn something new?
    Attended a computing event?
    Post and Share!

  9. #9
    Join Date
    Oct 2008
    Location
    Mojave desert
    Posts
    304

    Default Re: Photogrammetry?

    Well, docker's giving me the same kinds of issues. With ryanfb/visualsfm, I get "cannot open display". With spedenaave/dpg, which is openmvg and openmvs, I get a crash when it tries to create the output folder. (Heck, I can manually create the output folder, but I still get the crash.) As for PyPI, the famed photogrammetry toolkit isn't there, as nearly as I can determine. So, I'm keeping my fingers crossed for Malcolm and happy to be the first tester, but openMVS requires a sparse point cloud as input, which I'll need to generate with openMVG, so I'll check your repo again tomorrow.

    TSU, your experiment sounds interesting, but not in the cards at the moment because 1) my ssd is too small, 2) ironically I gave my only spare computer to the friend on whose behalf I'm now researching photogrammetry software, and 3) I haven't forgotten your challenge to write a wiki on digital audio with opensuse! GEF


  10. #10
    Join Date
    Jun 2008
    Location
    Podunk
    Posts
    26,823
    Blog Entries
    15

    Default Re: Photogrammetry?

    On Tue 10 Jul 2018 05:46:03 AM CDT, gfagan wrote:

    Well, docker's giving me the same kinds of issues. With
    ryanfb/visualsfm, I get "cannot open display". With spedenaave/dpg,
    which is openmvg and openmvs, I get a crash when it tries to create the
    output folder. (Heck, I can manually create the output folder, but I
    still get the crash.) As for PyPI, the famed photogrammetry toolkit
    isn't there, as nearly as I can determine. So, I'm keeping my fingers
    crossed for Malcolm and happy to be the first tester, but openMVS
    requires a sparse point cloud as input, which I'll need to generate with
    openMVG, so I'll check your repo again tomorrow.

    TSU, your experiment sounds interesting, but not in the cards at the
    moment because 1) my ssd is too small, 2) ironically I gave my only
    spare computer to the friend on whose behalf I'm now researching
    photogrammetry software, and 3) I haven't forgotten your challenge to
    write a wiki on digital audio with opensuse! GEF


    Hi
    Need to delve into the code, gcc8 DSO issues (seems to have hit a
    few programs)... might need to create an upstream bug report, so might
    be a few days

    --
    Cheers Malcolm °¿° SUSE Knowledge Partner (Linux Counter #276890)
    SLES 15 | GNOME Shell 3.26.2 | 4.12.14-23-default
    If you find this post helpful and are logged into the web interface,
    please show your appreciation and click on the star below... Thanks!


Page 1 of 7 123 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •