portugueslab / stytra

A modular package to control stimulation and track behaviour
http://www.portugueslab.com/stytra/
GNU General Public License v3.0
41 stars 26 forks source link

Offline tracking crashes #5

Closed mcarbotano closed 5 years ago

mcarbotano commented 5 years ago

Hello there, amazing job you did with the program!! I'm trying to use the offline tracking feature (tail) and I'm facing an error. The GUI loads ok and the video to track also but then no tracking happens and after a while the console shows :

(stytra) acer@swift:~$ /home/acer/anaconda3/envs/stytra/lib/python3.7/site-packages/numpy/lib/function_base.py:1520: RuntimeWarning: invalid value encountered in greater _nx.copyto(ddmod, pi, where=(ddmod == -pi) & (dd > 0)) /home/acer/anaconda3/envs/stytra/lib/python3.7/site-packages/numpy/lib/function_base.py:1522: RuntimeWarning: invalid value encountered in less _nx.copyto(ph_correct, 0, where=abs(dd) < discont)

I'm on Ubuntu 16.04 or 19.04 (same error for both versions) and all conda packages up to date.

Thanks!

--EDIT-- Im getting a new error in one of my installations.

QOpenGLShaderProgram: could not create shader program Vertex shader for simpleShaderProg (MainVertexShader & PositionOnlyVertexShader) failed to compile QOpenGLShader: could not create shader Fragment shader for simpleShaderProg (MainFragmentShader & ShockingPinkSrcFragmentShader) failed to compile Errors linking simple shader: QOpenGLShaderProgram: could not create shader program Vertex shader for blitShaderProg (MainWithTexCoordsVertexShader & UntransformedPositionVertexShader) failed to compile QOpenGLShader: could not create shader Fragment shader for blitShaderProg (MainFragmentShader & ImageSrcFragmentShader) failed to compile Errors linking blit shader: QOpenGLShaderProgram: could not create shader program Warning: "" failed to compile! /home/martin.carbotano/anaconda3/envs/stytra/lib/python3.7/site-packages/numpy/lib/function_base.py:1520: RuntimeWarning: invalid value encountered in greater _nx.copyto(ddmod, pi, where=(ddmod == -pi) & (dd > 0)) /home/martin.carbotano/anaconda3/envs/stytra/lib/python3.7/site-packages/numpy/lib/function_base.py:1522: RuntimeWarning: invalid value encountered in less _nx.copyto(ph_correct, 0, where=abs(dd) < discont)

--

vilim commented 5 years ago

Thanks for trying the software! We did notice problems with OpenGL stimulus display on some Linux configurations, it should be switched off if causes problems. However, this should have no influence on offline tracking. The numpy RuntimeWarning is nothing to worry about, it doesn't cause crashes.

What do you mean exactly by no tracking happens? If you follow the steps at http://www.portugueslab.com/stytra/userguide/7_offline.html which step fails for you? Could you please attach the outputs of conda list and conda info commands? We can set up a linux environment next week to check for any further issues.

mcarbotano commented 5 years ago

hey, thank you mate!

So, on two of my linux installation (ubuntu 19.10) the program don't pass the the loading of the video. Nothing happens after I click the lunch stytra button after the selection of the video. On the linux I have in the lab (ubuntu 16.04) I can get the GUI lunched and the video displayed. But the tracking is like frozen. I can see the blue axis that I can move to correct the position but the red tracked tail, I suppose, is not moving and not over the actual tail. Its off by 20° and not moving at all. Then, after a few seconds, or if I try to move the blue axis line, the programs stops working and no action is noticeable. See the screen capture below please. It seems that the orientation is wrong, but when I try to flip (the blue axis I mean) the program crashes.

https://www.dropbox.com/s/27aowhgw9b9xtrw/Screenshot%20from%202019-05-03%2011-20-17.png?dl=0 (for some reason I cannot attached the image here)

(stytra) martin.carbotano@ICM-WYART-LF03:~$ conda list packages in environment at /home/martin.carbotano/anaconda3/envs/stytra: Name Version Build Channel alabaster 0.7.12 py37_0
anaconda custom py37_0
anaconda-client 1.7.2 py37_0
anaconda-project 0.8.2 py37_0
anytree 2.6.0 pypi_0 pypi arrayqueues 1.2.0b0 pypi_0 pypi asn1crypto 0.24.0 py37_0
astroid 2.2.5 py37_0
astropy 3.1.2 py37h7b6447c_0
atomicwrites 1.3.0 py37_1
attrs 19.1.0 py37_1
babel 2.6.0 py37_0
backcall 0.1.0 py37_0
backports 1.0 py37_1
backports.os 0.1.1 py37_0
backports.shutil_get_terminal_size 1.0.0 py37_2
beautifulsoup4 4.7.1 py37_1
bitarray 0.8.3 py37h14c3975_0
bkcharts 0.2 py37_0
blas 1.0 mkl
bleach 3.1.0 py37_0
blosc 1.15.0 hd408876_0
bokeh 1.0.4 py37_0
boto 2.49.0 py37_0
bottleneck 1.2.1 py37h035aef0_1
bzip2 1.0.6 h14c3975_5
ca-certificates 2019.3.9 hecc5488_0 conda-forge cairo 1.14.12 h8948797_3
certifi 2019.3.9 py37_0 conda-forge cffi 1.12.2 py37h2e261b9_1
chardet 3.0.4 py37_1
click 7.0 py37_0
cloudpickle 0.8.0 py37_0
clyent 1.2.2 py37_1
colorama 0.4.1 py37_0
colorspacious 1.1.2 pypi_0 pypi contextlib2 0.5.5 py37_0
cryptography 2.6.1 py37h1ba5d50_0
curl 7.64.0 hbc83047_2
cycler 0.10.0 py37_0
cython 0.29.6 py37he6710b0_0
cytoolz 0.9.0.1 py37h14c3975_1
dask 1.1.4 py37_1
dask-core 1.1.4 py37_1
dbus 1.13.6 h746ee38_0
decorator 4.4.0 py37_1
deepdish 0.3.6 pypi_0 pypi defusedxml 0.5.0 py37_1
distributed 1.26.0 py37_1
docutils 0.14 py37_0
entrypoints 0.3 py37_0
et_xmlfile 1.0.1 py37_0
expat 2.2.6 he6710b0_0
fastcache 1.0.2 py37h14c3975_2
ffmpeg 4.0.2 ha0c5888_2 conda-forge filelock 3.0.10 py37_0
flask 1.0.2 py37_1
fontconfig 2.13.0 h9420a91_0
freeglut 3.0.0 hf484d3e_5
freetype 2.9.1 h8a8886c_1
fribidi 1.0.5 h7b6447c_0
get_terminal_size 1.0.0 haa9412d_0
gevent 1.4.0 py37h7b6447c_0
gitdb2 2.0.5 pypi_0 pypi gitpython 2.1.11 pypi_0 pypi glib 2.56.2 hd408876_0
glob2 0.6 py37_1
gmp 6.1.2 h6c8ec71_1
gmpy2 2.0.8 py37h10f8cd9_2
gnutls 3.5.19 h2a4e5f8_1 conda-forge graphite2 1.3.13 h23475e2_0
greenlet 0.4.15 py37h7b6447c_0
gst-plugins-base 1.14.0 hbbd80ab_1
gstreamer 1.14.0 hb453b48_1
h5py 2.8.0 py37h989c5e5_3
harfbuzz 1.8.8 hffaf4a1_0
hdf5 1.10.2 hba1933b_1
heapdict 1.0.0 py37_2
html5lib 1.0.1 py37_0
icu 58.2 h9c2bf20_1
idna 2.8 py37_0
imageio 2.5.0 py37_0
imageio-ffmpeg 0.3.0 pypi_0 pypi imagesize 1.1.0 py37_0
importlib_metadata 0.8 py37_0
intel-openmp 2019.3 199
ipykernel 5.1.0 py37h39e3cac_0
ipython 7.4.0 py37h39e3cac_0
ipython_genutils 0.2.0 py37_0
ipywidgets 7.4.2 py37_0
isort 4.3.16 py37_0
itsdangerous 1.1.0 py37_0
jasper 2.0.14 h07fcdf6_1
jbig 2.1 hdba287a_0
jdcal 1.4 py37_0
jedi 0.13.3 py37_0
jeepney 0.4 py37_0
jinja2 2.10 py37_0
jpeg 9b h024ee3a_2
jsonschema 3.0.1 py37_0
jupyter 1.0.0 py37_7
jupyter_client 5.2.4 py37_0
jupyter_console 6.0.0 py37_0
jupyter_core 4.4.0 py37_0
jupyterlab 0.35.4 py37hf63ae98_0
jupyterlab_server 0.2.0 py37_0
keyring 18.0.0 py37_0
kiwisolver 1.0.1 py37hf484d3e_0
krb5 1.16.1 h173b8e3_7
lazy-object-proxy 1.3.1 py37h14c3975_2
libarchive 3.3.3 h5d8350f_5
libcurl 7.64.0 h20c2e04_2
libedit 3.1.20181209 hc058e9b_0
libffi 3.2.1 hd88cf55_4
libgcc-ng 8.2.0 hdf63c60_1
libgfortran-ng 7.3.0 hdf63c60_0
libglu 9.0.0 hf484d3e_1
libiconv 1.15 h516909a_1005 conda-forge liblief 0.9.0 h7725739_2
libopencv 3.4.2 hb342d67_1
libopus 1.3 h7b6447c_0
libpng 1.6.36 hbc83047_0
libsodium 1.0.16 h1bed415_0
libssh2 1.8.0 h1ba5d50_4
libstdcxx-ng 8.2.0 hdf63c60_1
libtiff 4.0.10 h2733197_2
libtool 2.4.6 h7b6447c_5
libuuid 1.0.3 h1bed415_2
libvpx 1.7.0 h439df22_0
libxcb 1.13 h1bed415_1
libxml2 2.9.9 he19cac6_0
libxslt 1.1.33 h7d1a2b0_0
lightparam 0.3.6 pypi_0 pypi llvmlite 0.28.0 py37hd408876_0
locket 0.2.0 py37_1
lxml 4.3.2 py37hefd8a0e_0
lz4-c 1.8.1.2 h14c3975_0
lzo 2.10 h49e0be7_2
markupsafe 1.1.1 py37h7b6447c_0
matplotlib 3.0.3 py37h5429711_0
mccabe 0.6.1 py37_1
mistune 0.8.4 py37h7b6447c_0
mkl 2019.3 199
mkl-service 1.1.2 py37he904b0f_5
mkl_fft 1.0.10 py37ha843d7b_0
mkl_random 1.0.2 py37hd81dba3_0
more-itertools 6.0.0 py37_0
mpc 1.1.0 h10f8cd9_1
mpfr 4.0.1 hdf1c602_3
mpmath 1.1.0 py37_0
msgpack-python 0.6.1 py37hfd86e86_1
multipledispatch 0.6.0 py37_0
nbconvert 5.4.1 py37_3
nbformat 4.4.0 py37_0
ncurses 6.1 he6710b0_1
nettle 3.3 0 conda-forge networkx 2.2 py37_1
nltk 3.4 py37_1
nose 1.3.7 py37_2
notebook 5.7.8 py37_0
numba 0.43.1 py37h962f231_0
numexpr 2.6.9 py37h9e4a6bb_0
numpy 1.16.2 py37h7e9f1db_0
numpy-base 1.16.2 py37hde5b4d6_0
numpydoc 0.8.0 py37_0
olefile 0.46 py37_0
opencv 3.4.2 py37h6fd60c2_1
openh264 1.8.0 hdbcaa40_1000 conda-forge openpyxl 2.6.1 py37_1
openssl 1.1.1b h14c3975_1 conda-forge packaging 19.0 py37_0
pandas 0.24.2 py37he6710b0_0
pandoc 2.2.3.2 0
pandocfilters 1.4.2 py37_1
pango 1.42.4 h049681c_0
parso 0.3.4 py37_0
partd 0.3.10 py37_1
patchelf 0.9 he6710b0_3
path.py 11.5.0 py37_0
pathlib2 2.3.3 py37_0
patsy 0.5.1 py37_0
pcre 8.43 he6710b0_0
pep8 1.7.1 py37_0
pexpect 4.6.0 py37_0
pickleshare 0.7.5 py37_0
pillow 5.4.1 py37h34e0f95_0
pims 0.4.1 pypi_0 pypi pip 19.0.3 py37_0
pixman 0.38.0 h7b6447c_0
pkginfo 1.5.0.1 py37_0
pluggy 0.9.0 py37_0
ply 3.11 py37_0
prometheus_client 0.6.0 py37_0
prompt_toolkit 2.0.9 py37_0
psutil 5.6.1 py37h7b6447c_0
ptyprocess 0.6.0 py37_0
py 1.8.0 py37_0
py-lief 0.9.0 py37h7725739_2
py-opencv 3.4.2 py37hb342d67_1
pycodestyle 2.5.0 py37_0
pycosat 0.6.3 py37h14c3975_0
pycparser 2.19 py37_0
pycrypto 2.6.1 py37h14c3975_9
pycurl 7.43.0.2 py37h1ba5d50_0
pyflakes 2.1.1 py37_0
pygments 2.3.1 py37_0
pylint 2.3.1 py37_0
pyodbc 4.0.26 py37he6710b0_0
pyopengl 3.1.0 pypi_0 pypi pyopenssl 19.0.0 py37_0
pyparsing 2.3.1 py37_0
pyqt 5.9.2 py37h05f1152_2
pyqtgraph 0.10.0 pypi_0 pypi pyrsistent 0.14.11 py37h7b6447c_0
pysocks 1.6.8 py37_0
pytables 3.4.4 py37ha205bf6_0
pytest 4.3.1 py37_0
pytest-arraydiff 0.3 py37h39e3cac_0
pytest-astropy 0.5.0 py37_0
pytest-doctestplus 0.3.0 py37_0
pytest-openfiles 0.3.2 py37_0
pytest-remotedata 0.3.1 py37_0
python 3.7.3 h0371630_0
python-dateutil 2.8.0 py37_0
python-libarchive-c 2.8 py37_6
pytz 2018.9 py37_0
pywavelets 1.0.2 py37hdd07704_0
pyyaml 5.1 py37h7b6447c_0
pyzmq 18.0.0 py37he6710b0_0
qdarkstyle 2.6.6 pypi_0 pypi qimage2ndarray 1.8 pypi_0 pypi qt 5.9.7 h5867ecd_1
qtawesome 0.5.7 py37_1
qtconsole 4.4.3 py37_0
qtpy 1.7.0 py37_1
readline 7.0 h7b6447c_5
requests 2.21.0 py37_0
rope 0.12.0 py37_0
ruamel_yaml 0.15.46 py37h14c3975_0
scikit-image 0.14.2 py37he6710b0_0
scikit-learn 0.20.3 py37hd81dba3_0
scipy 1.2.1 py37h7c811a0_0
seaborn 0.9.0 py37_0
secretstorage 3.1.1 py37_0
send2trash 1.5.0 py37_0
setuptools 40.8.0 py37_0
simplegeneric 0.8.1 py37_2
singledispatch 3.4.0.3 py37_0
sip 4.19.8 py37hf484d3e_0
six 1.12.0 py37_0
slicerator 1.0.0 pypi_0 pypi smmap2 2.0.5 pypi_0 pypi snappy 1.1.7 hbae5bb6_3
snowballstemmer 1.2.1 py37_0
sortedcollections 1.1.2 py37_0
sortedcontainers 2.1.0 py37_0
soupsieve 1.8 py37_0
sphinx 1.8.5 py37_0
sphinxcontrib 1.0 py37_1
sphinxcontrib-websupport 1.1.0 py37_1
spyder 3.3.3 py37_0
spyder-kernels 0.4.2 py37_0
sqlalchemy 1.3.1 py37h7b6447c_0
sqlite 3.27.2 h7b6447c_0
statsmodels 0.9.0 py37h035aef0_0
stytra 0.8.8 pypi_0 pypi sympy 1.3 py37_0
tblib 1.3.2 py37_0
terminado 0.8.1 py37_1
testpath 0.4.2 py37_0
tk 8.6.8 hbc83047_0
toolz 0.9.0 py37_0
tornado 6.0.2 py37h7b6447c_0
tqdm 4.31.1 py37_1
traitlets 4.3.2 py37_0
unicodecsv 0.14.1 py37_0
unixodbc 2.3.7 h14c3975_0
urllib3 1.24.1 py37_0
wcwidth 0.1.7 py37_0
webencodings 0.5.1 py37_1
werkzeug 0.14.1 py37_0
wheel 0.33.1 py37_0
widgetsnbextension 3.4.2 py37_0
wrapt 1.11.1 py37h7b6447c_0
wurlitzer 1.0.2 py37_0
x264 1!152.20180806 h14c3975_0 conda-forge xlrd 1.2.0 py37_0
xlsxwriter 1.1.5 py37_0
xlwt 1.3.0 py37_0
xz 5.2.4 h14c3975_4
yaml 0.1.7 had09818_2
zeromq 4.3.1 he6710b0_3
zict 0.1.4 py37_0
zipp 0.3.3 py37_1
zlib 1.2.11 h7b6447c_3
zstd 1.3.7 h0b5b093_0

What conda info commands do yo man? -all?

Thanks a lot for the help!

vilim commented 5 years ago

I have pushed the fix for the opengl display, so it's not activated for offline tracking. I am not sure this will fix it, but you can upgrade stytra now and try again:

pip install --upgrade stytra

Please copy all the console output after you launch the offline tracking. Next week I will try the procedure on a Linux computer, perhaps there is a deeper issue with some package conflict.

mcarbotano commented 5 years ago

Cool! Now the program is not crashing any more. Its tracking badly, but I want to see if are my videos conditions . Ill run some test and let you know. Thanks a lot!!

vilim commented 5 years ago

Glad to be of help. For tracking quality please: 1) make sure that the correct point is at the tip and at the base of the tail 2) play with the parameters in the tracking settings, adjust the clipping threshold, window size etc. You can use the image display control to check the processed image and ensure that the tail is the only bright thing