SystemError: new style getargs format but argument is not a tuple (#39)
teamcharliegithub opened this issue · 1 comments
Having the same issue as #39 - receiving a SystemError in regards to Line 79 of processor.py. I attempted a fix by changing self.blur = [3, 3] to be a tuple, to no avail. I found some talk on StackExchange referencing changing the type of the value inside the tuple, but that also did not work.
I will also say this is occurring from a totally fresh install of EyeLoop.
My dependencies are:
eyeloop: 0.35
numpy: 1.19.5
opencv-contrib-python: 4.4.0.46
pip: 23.3
pymba: 0.3.7
PyYAML: 6.0.1
setuptools: 68.0.0
wheel: 0.41.2
These are the only packages have installed in my (also fresh) Anaconda virtual environment, which is dedicated for EyeLoop testing.
Though the error seems to be the same as in #39, my particular traceback is below:
2023-10-18 00:07:56,428 - eyeloop.run_eyeloop - INFO - Initiating tracking via Importer: cv
Processing 0 frames per second.
Traceback (most recent call last):
File "C:\Users\USER1\anaconda3\envs\EL3\lib\runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Users\USER1\anaconda3\envs\EL3\lib\runpy.py", line 87, in _run_code
exec(code, run_globals)
File "C:\Users\USER1\anaconda3\envs\EL3\Scripts\eyeloop.exe\__main__.py", line 7, in <module>
File "C:\Users\USER1\anaconda3\envs\EL3\lib\site-packages\eyeloop\run_eyeloop.py", line 110, in main
EyeLoop(sys.argv[1:], logger=None)
File "C:\Users\USER1\anaconda3\envs\EL3\lib\site-packages\eyeloop\run_eyeloop.py", line 43, in __init__
self.run()
File "C:\Users\USER1\anaconda3\envs\EL3\lib\site-packages\eyeloop\run_eyeloop.py", line 94, in run
self.run_importer()
File "C:\Users\USER1\anaconda3\envs\EL3\lib\site-packages\eyeloop\run_eyeloop.py", line 101, in run_importer
config.importer.route()
File "C:\Users\USER1\anaconda3\envs\EL3\lib\site-packages\eyeloop\importers\cv.py", line 68, in route
self.first_frame()
File "C:\Users\USER1\anaconda3\envs\EL3\lib\site-packages\eyeloop\importers\cv.py", line 65, in first_frame
self.arm(width, height, image)
File "C:\Users\USER1\anaconda3\envs\EL3\lib\site-packages\eyeloop\importers\importer.py", line 45, in arm
config.engine.arm(width, height, image)
File "C:\Users\USER1\anaconda3\envs\EL3\lib\site-packages\eyeloop\engine\engine.py", line 85, in arm
self.iterate(image)
File "C:\Users\USER1\anaconda3\envs\EL3\lib\site-packages\eyeloop\engine\engine.py", line 183, in track
self.pupil_processor.track(img)
File "C:\Users\USER1\anaconda3\envs\EL3\lib\site-packages\eyeloop\engine\processor.py", line 112, in track_
self.thresh() #either pupil or cr
File "C:\Users\USER1\anaconda3\envs\EL3\lib\site-packages\eyeloop\engine\processor.py", line 79, in pupil_thresh
self.source[:] = cv2.threshold(cv2.GaussianBlur(cv2.erode(self.source, kernel, iterations = 1), self.blur, 0), self.binarythreshold, 255, cv2.THRESH_BINARY_INV)[1]
SystemError: new style getargs format but argument is not a tuple
Processing 0 frames per second.
you seem to have to make the "self.blur" a tuple(3,3) rather than [3, 3], and the steup again