217 lines
4.5 KiB
Markdown
217 lines
4.5 KiB
Markdown
# stvid
|
|
Fork/clone of cbassa's `stvid`.
|
|
|
|
# Installation
|
|
Debian. Install package dependencies:
|
|
|
|
```
|
|
sudo apt install python3-virtualenv python3-pip python3-dev \
|
|
source-extractor astrometry.net \
|
|
libeigen3-dev giza-dev libx11-dev
|
|
```
|
|
|
|
Perhaps need some of the `astrometry.net` data files:
|
|
|
|
```
|
|
sudo apt install \
|
|
astrometry-data-tycho2 astrometry-data-tycho2-07 \
|
|
astrometry-data-tycho2-08 astrometry-data-tycho2-09 \
|
|
astrometry-data-tycho2-10-19
|
|
```
|
|
|
|
|
|
```
|
|
git clone https://spacecruft.org/spacecruft/stvid
|
|
# Or use upstream:
|
|
git clone https://github.com/cbassa/stvid
|
|
```
|
|
|
|
Optionally, set up python virtual environment:
|
|
|
|
```
|
|
cd stvid
|
|
virtualenv -p python3 env
|
|
source env/bin/activate
|
|
pip install --upgrade pip
|
|
```
|
|
|
|
Install dependencies. Numpy needs to be installed first, or the
|
|
install fails.
|
|
|
|
```
|
|
pip install --upgrade numpy
|
|
pip install --upgrade -r requirements.txt
|
|
```
|
|
|
|
Debian in bug #941466 changed the name of the `sextractor` dependency to
|
|
`source-extractor`, so a symlink is needed for now:
|
|
|
|
```
|
|
sudo ln -s /usr/bin/source-extractor /usr/local/bin/sextractor
|
|
```
|
|
|
|
Install hough3d-code dependency:
|
|
|
|
```
|
|
cd ../
|
|
git clone https://gitlab.com/pierros/hough3d-code
|
|
cd hough3d-code
|
|
make all
|
|
sudo cp -p hough3dlines /usr/local/bin/hough3dlines
|
|
```
|
|
|
|
# Configure
|
|
Thusly...
|
|
|
|
```
|
|
cd stvid/
|
|
cp -p configuration.ini-dist configuration.ini
|
|
# Edit
|
|
# Note for fields st-username and st-password, *don't* use quotes.
|
|
# Set:
|
|
vi configuration.ini
|
|
```
|
|
|
|
Edit various `configuration.ini` fields:
|
|
```
|
|
# For example:
|
|
observer_cospar = 9999 # COSPAR number of observer's site
|
|
observer_name = Jeff Moe # Name of observer
|
|
observer_lat = 40.568912 # Latitude of location in decimal degrees
|
|
observer_lon = -105.225852 # Longitude of location in decimal degrees
|
|
observer_height = 1860 # Elevation of location in meters
|
|
|
|
observations_path = ./data/obs # Path for raw acquisitions
|
|
tle_path = ./data/tle # Path where TLEs are stored (and updated)
|
|
results_path = ./data/results # Path for results of processed obs
|
|
|
|
st-username = foo
|
|
st-password = bar
|
|
|
|
# Path to source-extractor
|
|
sex_config = /usr/bin/source-extractor
|
|
```
|
|
|
|
Store downloads here:
|
|
|
|
```
|
|
mkdir -p ./data/obs ./data/tle ./data/results
|
|
```
|
|
|
|
Set `astrometry.net` to run in parallel, assuming you have enough RAM:
|
|
(This doesn't appear to work? Breaks?).
|
|
|
|
```
|
|
sudo vim /etc/astrometry.cfg
|
|
# Uncomment:
|
|
inparallel
|
|
```
|
|
|
|
|
|
# Hardware
|
|
Setup with various hardware.
|
|
|
|
Make sure you're in groups that may be needed:
|
|
|
|
```
|
|
sudo adduser debian plugdev
|
|
sudo adduser debian video
|
|
```
|
|
|
|
## ASI ZWO ASI183MC Pro.
|
|
|
|
Download SDK from ASI. It is under a permissive license,
|
|
for the binaries, but where is the source?
|
|
It appears it is proprietary software. There are libre
|
|
implementations, such as for INDI.
|
|
|
|
|
|
* https://astronomy-imaging-camera.com/software-drivers
|
|
|
|
```
|
|
tar xf ASI_linux_mac_SDK_V1.26.tar.bz2
|
|
cd ASI_linux_mac_SDK_V1.26/
|
|
|
|
# Set up permissions with udev:
|
|
cat lib/asi.rules | sudo tee /etc/udev/rules.d/50-asi.rules
|
|
```
|
|
|
|
|
|
## Web Cam
|
|
Perhaps like this using a web cam and OpenCV
|
|
|
|
Set up udev:
|
|
```
|
|
echo 'SUBSYSTEM=="video1", GROUP="video", MODE="0660"' |
|
|
sudo tee /etc/udev/rules.d/10-webcam.rules
|
|
```
|
|
|
|
Testing with Logitech BRIO usb web cam. No udev configuration needed.
|
|
|
|
|
|
# Usage
|
|
Enter `virtualenv`, if used:
|
|
|
|
```
|
|
cd stvid/
|
|
source env/bin/activate
|
|
```
|
|
|
|
Get the latest TLEs:
|
|
|
|
```
|
|
./update_tle.py
|
|
```
|
|
|
|
Configure a position (example). XXX Best way to generate ?
|
|
|
|
```
|
|
echo \
|
|
'2022-08-07T23:44:14 R: 00:00:00.00 D: 00:00:00.0 H: -152.691 A: 180.000 E: 90.000 q: -28.18' |
|
|
> data/obs/control/position.txt
|
|
```
|
|
|
|
Acquire image, first download archives:
|
|
|
|
```
|
|
./acquire.py
|
|
```
|
|
|
|
|
|
# Fixed
|
|
When running `acquire.py` on `amd64` architecture it gives this error:
|
|
|
|
```
|
|
OSError: libbcm_host.so: cannot open shared object file: No such file or directory
|
|
```
|
|
|
|
The `libbcm_host.so` is a (non-libre?) firmware file that is part of Raspberry Pi.
|
|
|
|
https://github.com/raspberrypi/firmware/blob/master/opt/vc/lib/libbcm_host.so
|
|
|
|
That error comes from installing `picamerax` on `amd64`, which was added to
|
|
`requirements.txt`, but should really just be when on Raspberry Pi.
|
|
|
|
```
|
|
env/lib/python3.10/site-packages/picamerax/bcm_host.py:_lib = ct.CDLL('libbcm_host.so')
|
|
```
|
|
|
|
For now, just import the library that calls for that binary if the
|
|
Pi camera is used. No need to call it (and crash) if CV2 is used on non-Pi.
|
|
|
|
|
|
# Upstream
|
|
See `README-upstream.md`.
|
|
|
|
`stvid`:
|
|
|
|
* https://github.com/cbassa/stvid
|
|
|
|
© 2018-2022 Cees Bassa
|
|
|
|
|
|
# License
|
|
Same as upstream license, GPLv3.
|
|
|
|
© 2022, Jeff Moe
|