is this a possibility?
No service use
I know when you load it up it says something about converting the blobs via a website? But I want to know if it is possible to have it run offline, no connection to the internet, to maintain consistency. I do not want to have the image recognition be based on the connection, but rather its ability to recognize me.
michaelsalerno I do not want to have the image recognition be based on the connection, but rather its ability to recognize me.
This is not the case even if you have network connection. The blobs (models) are trained to recognize human shapes. They are static and don't change. If the blob you need in the script is downloaded, you can use it without internet connection.
Or am I misunderstanding?
Thanks,
Jaka
Dear @jakaskerl ,
I have tried it on my end, and i get an error stating that it can't connect to the API.
From Michael
What is it using for the segmentation? A yolo model?
I want to see what the code is using, and I want to see what images and know how many images this is trained on.
michaelsalerno
Can you paste this error you are getting?
michaelsalerno What is it using for the segmentation? A yolo model?
The example you linked to is not using segmentation, only detection using a MBnet model. https://docs.openvino.ai/2024/omz_models_model_person_detection_retail_0013.html
Thanks,
Jaka
Traceback (most recent call last):
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\urllib3\connection.py", line 174, in _new_conn
conn = connection.create_connection(
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\urllib3\util\connection.py", line 72, in create_connection
for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM):
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.3056.0_x64__qbz5n2kfra8p0\lib\socket.py", line 955, in getaddrinfo
for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno 11001] getaddrinfo failed
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\urllib3\connectionpool.py", line 715, in urlopen
httplib_response = self._make_request(
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\urllib3\connectionpool.py", line 404, in _make_request
self._validate_conn(conn)
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\urllib3\connectionpool.py", line 1060, in _validate_conn
conn.connect()
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\urllib3\connection.py", line 363, in connect
self.sock = conn = self._new_conn()
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\urllib3\connection.py", line 186, in _new_conn
raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPSConnection object at 0x000002065E4564D0>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\requests\adapters.py", line 486, in send
resp = conn.urlopen(
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\urllib3\connectionpool.py", line 801, in urlopen
retries = retries.increment(
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\urllib3\util\retry.py", line 594, in increment
raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='blobconverter.luxonis.com', port=443): Max retries exceeded with url: /zoo_models?version=2022.1&zoo_type=intel (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x000002065E4564D0>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\sale4088\AppData\Local\Programs\Depthai2\depthai-viewer\scripts\depthai-experiments\gen2-people-tracker\main.py", line 12, in <module>
tracker = oak.create_nn('person-detection-retail-0013', color_cam, tracker=True)
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\depthai_sdk\oak_camera.py", line 146, in create_nn
comp = NNComponent(self._pipeline,
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\depthai_sdk\components\nn_component.py", line 100, in init
self._parse_model(model)
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\depthai_sdk\components\nn_component.py", line 231, in _parse_model
zoo_models = blobconverter.zoo_list()
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\blobconverter\init.py", line 505, in zoo_list
response = requests.get("{}/zoo_models?{}".format(url, urllib.parse.urlencode(url_params)))
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\requests\api.py", line 73, in get
return request("get", url, params=params, \*\*kwargs)
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\requests\api.py", line 59, in request
return session.request(method=method, url=url, \*\*kwargs)
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\requests\sessions.py", line 589, in request
resp = self.send(prep, \*\*send_kwargs)
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\requests\sessions.py", line 703, in send
r = adapter.send(request, \*\*kwargs)
File "C:\Users\sale4088\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\requests\adapters.py", line 519, in send
raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='blobconverter.luxonis.com', port=443): Max retries exceeded with url: /zoo_models?version=2022.1&zoo_type=intel (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x000002065E4564D0>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed'))
How many images is that model trained off of?
michaelsalerno
It's an SDK issue, yes.
Add:
models = getSupportedModels(printModels=False)
try:
zoo_models = blobconverter.zoo_list()
except requests.exceptions.ConnectionError:
zoo_models = []
to depthai_sdk\components\nn_component.py line 230
michaelsalerno How many images is that model trained off of?
I don't know, there isn't any info on the website.
Thanks,
Jaka
When connecting to the internet, and using the OPENVINO model, is this technically cloud computing?
michaelsalerno
No, cloud computing means you are running inference on some other machine in the cloud. In the case of depthai, the model is loaded on the OAK device and is running on RVC VPU. This is called edge computing.
Thanks,
Jaka
Thank you, I really appreciate it!
If it is still only working through wifi, does that mean its edge computing still? Or does this mean that it is cloud computing?
michaelsalerno
Just because the OAK device is connected via WiFi does not mean it’s cloud computing. WiFi is simply the medium for network connectivity. If the inference is still happening locally on the OAK device and not on a cloud server, it’s still edge computing.
Cloud computing only applies if the actual computation (inference) is happening on a remote cloud server.
Thanks,
Jaka
Thank you for all your help!
One last question,
What NN is it using? Luxonis published information on latency that I would like to use, and I am curious to know which one it is so I can accurately talk about latency.
luxonis/depthai-experimentstree/master/gen2-people-tracker
The model that is using this.
From Michael
michaelsalerno
As readme suggests, it's mobilenetV2 backbone. We don't have latency tests for it. DIY
Thanks,
Jaka
Is there a simple way to test that?