cy-yologic 1.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,60 @@
1
+ Metadata-Version: 2.4
2
+ Name: cy-yologic
3
+ Version: 1.0.0
4
+ Summary: Extreme Speed YOLO Pose Pipeline with Cythonized Logic
5
+ Author: choiungyo
6
+ Author-email: choiungyo@example.com
7
+ Classifier: Programming Language :: Python :: 3
8
+ Classifier: License :: OSI Approved :: MIT License
9
+ Classifier: Operating System :: OS Independent
10
+ Requires-Python: >=3.8
11
+ Description-Content-Type: text/markdown
12
+ Requires-Dist: ultralytics>=8.0.0
13
+ Requires-Dist: numpy>=1.20.0
14
+ Requires-Dist: opencv-python>=4.5.0
15
+ Requires-Dist: Cython>=0.29.0
16
+ Dynamic: author
17
+ Dynamic: author-email
18
+ Dynamic: classifier
19
+ Dynamic: description
20
+ Dynamic: description-content-type
21
+ Dynamic: requires-dist
22
+ Dynamic: requires-python
23
+ Dynamic: summary
24
+
25
+ Markdown
26
+ # πŸš€ yologic (v1.0.0)
27
+
28
+ **Extreme Speed Real-Time YOLO Pose Pipeline with Cythonized C-Logic**
29
+
30
+ `yologic` is a high-performance wrapper for `ultralytics` YOLOv8-Pose, specifically engineered to eliminate Python's runtime overhead in real-time vision applications. Developed by **choiungyo**.
31
+
32
+ ---
33
+
34
+ ## πŸ”₯ Key Features
35
+
36
+ 1. **⚑ Cythonized Core (`logic_yolo`)**: All heavy mathematical computations (Spine angle calculation, movement delta analysis) are pre-compiled into native C code, reducing latency to near zero.
37
+ 2. **πŸ“Έ FastVideoStream**: A specialized non-blocking camera buffer that prevents frame-drop and synchronization lag common in standard OpenCV `read()` loops.
38
+ 3. **πŸ› οΈ Hardware Agnostic**: Optimized to work seamlessly with both NVIDIA CUDA and OpenVINO (Intel iGPU) environments.
39
+
40
+ ---
41
+
42
+ ## πŸ“¦ Installation
43
+
44
+ ```bash
45
+ pip install cy_yologic
46
+ ```
47
+ πŸ’» Quick Start
48
+
49
+ ```Python
50
+ from ultralytics import YOLO
51
+ import cy_yologic
52
+
53
+ # 1. Load your YOLO model
54
+ model = YOLO('yolov8n-pose.pt')
55
+
56
+ # 2. Run the extreme-speed pipeline
57
+ cy_yologic.run_yolo_pipeline(model_instance=model, cam_src=0)
58
+ ```
59
+ πŸ“„ License
60
+ MIT License. Developed with passion for extreme performance by choiungyo.
@@ -0,0 +1,36 @@
1
+ Markdown
2
+ # πŸš€ yologic (v1.0.0)
3
+
4
+ **Extreme Speed Real-Time YOLO Pose Pipeline with Cythonized C-Logic**
5
+
6
+ `yologic` is a high-performance wrapper for `ultralytics` YOLOv8-Pose, specifically engineered to eliminate Python's runtime overhead in real-time vision applications. Developed by **choiungyo**.
7
+
8
+ ---
9
+
10
+ ## πŸ”₯ Key Features
11
+
12
+ 1. **⚑ Cythonized Core (`logic_yolo`)**: All heavy mathematical computations (Spine angle calculation, movement delta analysis) are pre-compiled into native C code, reducing latency to near zero.
13
+ 2. **πŸ“Έ FastVideoStream**: A specialized non-blocking camera buffer that prevents frame-drop and synchronization lag common in standard OpenCV `read()` loops.
14
+ 3. **πŸ› οΈ Hardware Agnostic**: Optimized to work seamlessly with both NVIDIA CUDA and OpenVINO (Intel iGPU) environments.
15
+
16
+ ---
17
+
18
+ ## πŸ“¦ Installation
19
+
20
+ ```bash
21
+ pip install cy_yologic
22
+ ```
23
+ πŸ’» Quick Start
24
+
25
+ ```Python
26
+ from ultralytics import YOLO
27
+ import cy_yologic
28
+
29
+ # 1. Load your YOLO model
30
+ model = YOLO('yolov8n-pose.pt')
31
+
32
+ # 2. Run the extreme-speed pipeline
33
+ cy_yologic.run_yolo_pipeline(model_instance=model, cam_src=0)
34
+ ```
35
+ πŸ“„ License
36
+ MIT License. Developed with passion for extreme performance by choiungyo.
File without changes
@@ -0,0 +1,65 @@
1
+ import os
2
+ import subprocess
3
+ import sys
4
+ import glob
5
+
6
+
7
+ def deploy():
8
+ """
9
+ Automatically builds setup.py and deploys the package to PyPI using token authentication.
10
+ """
11
+ print("\nπŸš€ [PyPI Auto-Publisher] Starting global deployment pipeline...")
12
+
13
+ # 1. Check for setup.py
14
+ if not os.path.exists("setup.py"):
15
+ print("❌ ERROR: 'setup.py' not found in the current directory.")
16
+ print("πŸ’‘ Action: Please navigate to the root directory of your project.")
17
+ return
18
+
19
+ # 2. Retrieve PyPI Token from Environment Variables
20
+ pypi_token = os.environ.get("PYPI_TOKEN")
21
+ if not pypi_token:
22
+ print("❌ ERROR: Environment variable 'PYPI_TOKEN' is missing.")
23
+ print("πŸ’‘ Action: Set your token in the terminal first:")
24
+ pypi_token = input()
25
+ print(" Windows (PowerShell): $env:PYPI_TOKEN='pypi-your-token-here'")
26
+ return
27
+
28
+ try:
29
+ # 3. Clean up previous build artifacts
30
+ print("\n🧹 [1/3] Cleaning up old build artifacts (dist/build)...")
31
+ if os.path.exists("dist"):
32
+ subprocess.run("rmdir /s /q dist" if os.name == "nt" else "rm -rf dist", shell=True)
33
+ if os.path.exists("build"):
34
+ subprocess.run("rmdir /s /q build" if os.name == "nt" else "rm -rf build", shell=True)
35
+
36
+ # 4. Build source distribution and wheel
37
+ print("\nπŸ“¦ [2/3] Building source distribution and wheel archives...")
38
+ subprocess.run([sys.executable, "setup.py", "sdist", "bdist_wheel"], check=True)
39
+
40
+ # 5. Find actual built files (Fixing Windows dist/* wildcard 400 bug)
41
+ built_files = glob.glob(os.path.join("dist", "*"))
42
+ if not built_files:
43
+ print("❌ ERROR: No built files found in 'dist' folder.")
44
+ return
45
+
46
+ print("\nπŸ”₯ [3/3] Uploading packages to PyPI warehouse via Twine...")
47
+
48
+ # Inject API token into environment for secure non-interactive authentication
49
+ env_copy = os.environ.copy()
50
+ env_copy["TWINE_USERNAME"] = "__token__"
51
+ env_copy["TWINE_PASSWORD"] = pypi_token
52
+
53
+ # Execute twine upload with explicit file list instead of dist/*
54
+ cmd = ["twine", "upload"] + built_files
55
+ subprocess.run(cmd, check=True, env=env_copy, shell=True)
56
+
57
+ print("\nπŸŽ‰ [SUCCESS] Deployment completed successfully!")
58
+ print("🌐 Your library has been published to the global Python ecosystem.")
59
+
60
+ except subprocess.CalledProcessError as e:
61
+ print(f"\n❌ ERROR: Command execution failed during build/upload process.")
62
+ print(f"Details: {e}")
63
+ except Exception as e:
64
+ print(f"\n❌ ERROR: Unexpected system error occurred.")
65
+ print(f"Details: {e}")
@@ -0,0 +1,6 @@
1
+ # boss_yolo/__init__.py
2
+ from .core import run_yolo_pipeline, FastVideoStream
3
+ # C둜 컴파일된 logic_yolo ν™•μž₯ λͺ¨λ“ˆ 바인딩
4
+ from . import logic_yolo
5
+
6
+ __all__ = ['run_yolo_pipeline', 'FastVideoStream', 'logic_yolo']