Skip to content
This repository has been archived by the owner on Apr 15, 2024. It is now read-only.

SystemError: new style getargs format but argument is not a tuple (#39) #42

Open
teamcharliegithub opened this issue Oct 18, 2023 · 1 comment

Comments

@teamcharliegithub
Copy link

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.
@y1h6b
Copy link

y1h6b commented Jan 29, 2024

you seem to have to make the "self.blur" a tuple(3,3) rather than [3, 3], and the steup again

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants