Skip to content

Commit

Permalink
Introduce version 0.4.0
Browse files Browse the repository at this point in the history
  • Loading branch information
rathaROG committed Oct 6, 2024
1 parent f8436e7 commit 309616f
Show file tree
Hide file tree
Showing 20 changed files with 42 additions and 21 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/test_linux.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
- name: Install VSenseBox's data
run: |
pip install https://github.com/numediart/vsensebox-data/releases/download/v0.0.0/vsensebox_data_yolocls-0.0.0-py3-none-any.whl
pip install https://github.com/numediart/vsensebox-data/releases/download/v0.0.1/vsensebox_data_yoloult-0.0.1-py3-none-any.whl
pip install https://github.com/numediart/vsensebox-data/releases/download/v0.0.2/vsensebox_data_yoloult-0.0.2-py3-none-any.whl
pip install https://github.com/numediart/vsensebox-data/releases/download/v0.0.0/vsensebox_data_deepsort-0.0.0-py3-none-any.whl
- name: Prepare for tests
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test_macos.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
- name: Install VSenseBox's data
run: |
pip install https://github.com/numediart/vsensebox-data/releases/download/v0.0.0/vsensebox_data_yolocls-0.0.0-py3-none-any.whl
pip install https://github.com/numediart/vsensebox-data/releases/download/v0.0.1/vsensebox_data_yoloult-0.0.1-py3-none-any.whl
pip install https://github.com/numediart/vsensebox-data/releases/download/v0.0.2/vsensebox_data_yoloult-0.0.2-py3-none-any.whl
pip install https://github.com/numediart/vsensebox-data/releases/download/v0.0.0/vsensebox_data_deepsort-0.0.0-py3-none-any.whl
- name: Prepare for tests
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test_windows.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
- name: Install VSenseBox's data
run: |
pip install https://github.com/numediart/vsensebox-data/releases/download/v0.0.0/vsensebox_data_yolocls-0.0.0-py3-none-any.whl
pip install https://github.com/numediart/vsensebox-data/releases/download/v0.0.1/vsensebox_data_yoloult-0.0.1-py3-none-any.whl
pip install https://github.com/numediart/vsensebox-data/releases/download/v0.0.2/vsensebox_data_yoloult-0.0.2-py3-none-any.whl
pip install https://github.com/numediart/vsensebox-data/releases/download/v0.0.0/vsensebox_data_deepsort-0.0.0-py3-none-any.whl
- name: Prepare for tests
run: |
Expand Down
2 changes: 1 addition & 1 deletion GETSTARTED.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ All requirements are not strictly limited. However, some specific modules might
vsensebox.config()
```
Now you should see the Configurator GUI like in this scheenshot:
<img src="https://raw.githubusercontent.com/rathaROG/screenshot/master/VSenseBox/vsensebox_config_gui.jpg">
<img src="https://raw.githubusercontent.com/rathaROG/screenshot/refs/heads/master/VSenseBox/vsensebox_config_gui.jpg">
- You can also easily reset the internal configurations by calling the `reset()`. **THIS CAN'T BE REVERSED!** ⚠️
```
vsensebox.reset()
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,15 @@

[![Test Windows](https://github.com/numediart/vsensebox/actions/workflows/test_windows.yaml/badge.svg)](https://github.com/numediart/vsensebox/actions/workflows/test_windows.yaml) [![Test Linux](https://github.com/numediart/vsensebox/actions/workflows/test_linux.yaml/badge.svg)](https://github.com/numediart/vsensebox/actions/workflows/test_linux.yaml) [![Test macOS](https://github.com/numediart/vsensebox/actions/workflows/test_macos.yaml/badge.svg)](https://github.com/numediart/vsensebox/actions/workflows/test_macos.yaml)

<img src="https://raw.githubusercontent.com/rathaROG/screenshot/master/VSenseBox/vsensebox.jpg"><br />
<img src="https://raw.githubusercontent.com/rathaROG/screenshot/refs/heads/master/VSenseBox/vsensebox.jpg"><br />

**[📗 Documentation](https://numediart.github.io/vsensebox/) | [🚀 Getting started](https://numediart.github.io/vsensebox/getstarted.html) | [💡 Examples](https://numediart.github.io/vsensebox/examples.html)**

</div>

***VSenseBox*** is a small all-in-one Python toolbox filled with many vision/visual sensing modules such as object detectors and object trackers, etc. These modules are well integrated together and can be easily selected and configurated with minimal coding.

* Integrate with popular object detectors including YOLO v3, v4, v5, v8, v9, v10 and more.
* Integrate with popular object detectors including YOLO v3, v4, v5, v8, v9, v10, v11 and more.
* Integrate with bbox trackers including Centroid, SORT, DeepSORT, and more TBA.
* Support Python 3.9-3.12 on Windows, Linux, and macOS.
* Support YAML config file for each individual module.
Expand Down
5 changes: 2 additions & 3 deletions docs/vsensebox/modules.rst
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ The table below shows all the current supported modules which are integrated in
| | | | | * Run on: CPU or GPU (OpenCV DNN) |
| | +------------------+-------------------------------------------------+
| | | YOLO_Ultralytics | | * Integrated by linking `ultralytics`_ |
| | | | | * Model: .pt `v3, v5, v8, v9`_, v10_ |
| | | | | * Model: .pt `v3, v5, v8, v9, v11`_ |
| | | | | * Run on: CPU or GPU (PyTorch) |
+------------+--------------+------------------+-------------------------------------------------+
| Trackers | Centroid | Centroid | | * Built-in / Native |
Expand All @@ -39,8 +39,7 @@ The table below shows all the current supported modules which are integrated in
.. _v2, v3: https://pjreddie.com/darknet/yolo/
.. _V4: https://github.com/AlexeyAB/darknet
.. _ultralytics: https://github.com/numediart/ultralytics-for-vsensebox
.. _v3, v5, v8, v9: https://github.com/ultralytics/assets/releases
.. _v10: https://github.com/THU-MIG/yolov10/releases
.. _v3, v5, v8, v9, v11: https://github.com/ultralytics/assets/releases
.. _SORT repo: https://github.com/abewley/sort
.. _DeepSORT repo: https://github.com/deshwalmahesh/yolov7-deepsort-tracking

Expand Down
4 changes: 2 additions & 2 deletions examples/example_02.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,10 @@
hasFrame, frame = cap.read()
if hasFrame:

# Detect object using local YAML config > yolo_ultralytics_v8n.yaml
# Detect object using local YAML config > yolo_ultralytics_v11n.yaml
# More detector config files -> vsensebox/config/detectors
vs.detect(img=frame,
config_yaml="yolo_ultralytics_v8n.yaml",
config_yaml="yolo_ultralytics_v11n.yaml",
img_is_mat=True)

# Track object using local YAML config -> sort.yaml
Expand Down
4 changes: 2 additions & 2 deletions examples/example_03.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,12 +51,12 @@ def detect_and_track(vsense, input_video, det_yaml, trk_yaml, name="Detect & Tra

vs1_thread = threading.Thread(
target=detect_and_track,
args=(vs1, "gta.mp4", "yolo_ultralytics_v8n.yaml", "sort.yaml", "VSense 1")
args=(vs1, "gta.mp4", "yolo_ultralytics_v11n.yaml", "sort.yaml", "VSense 1")
)

vs2_thread = threading.Thread(
target=detect_and_track,
args=(vs2, "gta.mp4", "yolo_ultralytics_v8n.yaml", "centroid.yaml", "VSense 2")
args=(vs2, "gta.mp4", "yolo_ultralytics_v11n.yaml", "centroid.yaml", "VSense 2")
)

vs1_thread.start()
Expand Down
Binary file added examples/yolo11n.pt
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ classes: null # NULL=Null=null is None in Python
device: cpu
max_det: 100
line_width: 500
model_file: yolov8n.pt
model_file: yolov11n.pt
Binary file removed examples/yolov8n.pt
Binary file not shown.
4 changes: 2 additions & 2 deletions requirements/requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,10 @@ torchvision
torchaudio
### Tracker: SORT
filterpy
lapx>=0.5.9
lapx>=0.5.10
### GUI
PyQt6
### Customized vsensebox-ultralytics
vsensebox-ultralytics>=8.2.45
vsensebox-ultralytics>=8.3.5
### Frame rate calculator in examples
sfps
2 changes: 1 addition & 1 deletion tests/pretests.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
detectors_config_dir = joinFPathFull(internal_config_dir, 'detectors')

# Set "cpu"
config_yaml = joinFPathFull(detectors_config_dir, "yolo_ultralytics_v8n.yaml")
config_yaml = joinFPathFull(detectors_config_dir, "yolo_ultralytics_v11n.yaml")
cfg = DCFG_YOLOULT(cfg=config_yaml, relative_to_vsensebox_root=True)
cfg.device = "cpu"
cfg.configs['device'] = "cpu"
Expand Down
2 changes: 1 addition & 1 deletion vsensebox/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
from vsensebox.gui import config, reset
from vsensebox.utils.about import docs, github

__version__ = "0.3.0"
__version__ = "0.4.0"
__author__ = "Ratha SIV"
__description__ = "VSenseBox - Python toolbox for visual sensing."
__homepage__ = "https://numediart.github.io/vsensebox"
Expand Down
2 changes: 1 addition & 1 deletion vsensebox/config/detectors/default.yaml
Original file line number Diff line number Diff line change
@@ -1 +1 @@
config_yaml: config/detectors/yolo_ultralytics_v8n.yaml
config_yaml: config/detectors/yolo_ultralytics_v11n.yaml
Binary file modified vsensebox/config/detectors/detectors.zip
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ classes: null # NULL=Null=null is None in Python
device: 0
max_det: 100
line_width: 500
model_file: data/detectors/yolov9c.pt
model_file: data/detectors/yolov11n.pt
11 changes: 11 additions & 0 deletions vsensebox/config/detectors/yolo_ultralytics_v11s.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
detector: YOLO_Ultralytics
conf: 0.5
iou: 0.7
imgsz: 640
half: False
min_width: 35
classes: null # NULL=Null=null is None in Python
device: 0
max_det: 100
line_width: 500
model_file: data/detectors/yolov11s.pt
11 changes: 11 additions & 0 deletions vsensebox/config/detectors/yolo_ultralytics_v5nu.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
detector: YOLO_Ultralytics
conf: 0.5
iou: 0.7
imgsz: 640
half: False
min_width: 35
classes: null # NULL=Null=null is None in Python
device: 0
max_det: 100
line_width: 500
model_file: data/detectors/yolov5nu.pt
2 changes: 1 addition & 1 deletion vsensebox/gui/cfgloader_ui.py
Original file line number Diff line number Diff line change
Expand Up @@ -626,7 +626,7 @@ def retranslateUi(self, CFGLoader):
self.par14_lineEdit.setPlaceholderText(_translate("CFGLoader", "Parameter 14"))
self.par15_lineEdit.setPlaceholderText(_translate("CFGLoader", "Parameter 15"))
self.yaml_file_label.setText(_translate("CFGLoader", "You are configing file:"))
self.yaml_file_lineEdit.setPlaceholderText(_translate("CFGLoader", "For example: yolo_ultralytics_v9c.yaml"))
self.yaml_file_lineEdit.setPlaceholderText(_translate("CFGLoader", "For example: yolo_ultralytics_v11s.yaml"))
self.yaml_file_pushButton.setText(_translate("CFGLoader", "Browse"))
self.status_lineEdit.setPlaceholderText(_translate("CFGLoader", "Status"))
self.reload_pushButton.setText(_translate("CFGLoader", "Reload"))
Expand Down

0 comments on commit 309616f

Please sign in to comment.