Easy Agisoft MetaShape (EasyAMS) Plugin with extended functions for smart agriculture.
Please ensure you have the
Metashape Professional License
to have access to automation option/Built-in python scripting function
Download the tools/installer.py
in this project to your computer, and launch the installer.py
script in the metashape to open the GUI.
Please clone this repo to your local path.
Then Install this plugin by chosing the installer located at /Your/Local/Path/to/EasyAMS/tools/installer.py
with argument --dev
.
It will use folder at /Your/Local/Path/to/EasyAMS/src/easyams/
as easyams
source code package, after any modification, restart Metashape to make effects.
If you have any modification for installer.py
, rerun the Run Python Script
with --dev
arguement to refresh the cached installer file at User\AppData\Local\Agisoft\Metashape Pro\scripts\easyams_launcher.py
. Please refer
How to run Python script automatically on Metashape Professional start : Helpdesk Portal for more details.
Recommend using uv as virtual enviroment manager.
$ uv --version
uv 0.6.14
For example, the git repo folder is located at: C:\path\to\source\code\EasyAMS
with the following folder structure:
C:\path\to\source\code\EasyAMS
├─ docs/
├─ src/
├─ tests/
readme.md
pyproject.toml
...
Using the following command to setup development enviroment:
$ cd C:\path\to\source\code\EasyAMS
<repo> $ uv sync --all-groups
It will create a .venv
at current project folder and install the tests
dependency group and train
dependency group inside pyproject.toml
.
PS: The default easyams plugin dependency is free of
pytorch
andultralytics
, only using theonnx(cpu)
to inferencing and ensure the ease of installation.
For model training and exporting,labelme
is used for data annotation and thepytorch
package is required.
To run tests, you also need to manually download the wheel file from metashape official website Python 3 Module, then install to venv manually:
$ uv pip install path/to/Metashape-2.2.1-cp37.cp38.cp39.cp310.cp311-none-win_amd64.whl
For old wheel versions, please refer to Metashape old version archive.md
Init documents (Already done, no need to operate, just for notes)
<repo> $ uv run sphinx-quickstart
To build html, here need:
<repo> $ ./.venv/Source/activate
<repo> $ make html
# or
<repo> $ uv run sphinx-build -M html sourcedir outputdir
[EasyAMS] [CMD] /home/crest/.local/share/Agisoft/Metashape Pro/easyams-packages-py39/bin/uv venv /home/crest/.local/share/Agisoft/Metashape Pro/easyams-packages-py39/venv --python 3.9.13
[EasyAMS] [Error]:
[EasyAMS] × Querying Python at
[EasyAMS] │ `/home/crest/.local/share/uv/python/cpython-3.9.13-linux-x86_64-gnu/bin/python3.9`
[EasyAMS] │ failed with exit status exit status: 127
[EasyAMS]
[EasyAMS] │ [stderr]
[EasyAMS] │ /home/crest/.local/share/uv/python/cpython-3.9.13-linux-x86_64-gnu/bin/python3.9:
[EasyAMS] │ error while loading shared libraries: libcrypt.so.1: cannot open shared
[EasyAMS] │ object file: No such file or directory
[EasyAMS]
[EasyAMS] [EasyAMS] virtual isolated python venv creation failed
Solution: sudo pacman -S --needed libxcrypt libxcrypt-compat
This only happens on Manjaro PC, installing openssl-1.1 from pacman solved this problem. python - SSLError("Can't connect to HTTPS URL because the SSL module is not available.") in pip command - Stack Overflow