發表文章

目前顯示的是有「python」標籤的文章

Windows作業系統環境下安裝Ruby_Wikipedia語料庫截取純文本wp2txt_WikiExtractor

圖片
Ruby預設環境會有類似node.js的npm install的cli  (定位就跟微軟開發者在用的nuget差不多、或python的pip install....) 叫做gem 相關Ruby開源套件貢獻者會在此網站平台做釋出 https://rubygems.org/ 在一些自然語言語料庫收集任務最為知名的就是維基百科 https://dumps.wikimedia.org/ 當然要注意的是wikimedia有對下載者進行了速率限制,並將每個 IP 位址的連線數上限設為 3 個。目的是確保每個人都能以合理的下載速度存取檔案。 在這邊要從官方網站的Database backup dumps進去 也就是所有跨語言的公開WIKI媒體資料完整副本,以嵌入 XML 的維基文本來源檔案和元資料形式提供。 官方有釋出dumps出來的文本壓縮檔無法直接解析需要特殊前處理 https://dumps.wikimedia.org/backup-index.html 看 Wikipedia 網域抓語言代碼: https://en.wikipedia.org/ → enwiki https://zh.wikipedia.org/ → zhwiki https://ja.wikipedia.org/ → jawiki 比方說 日本語言的最新dumps資料網址 https://dumps.wikimedia.org/jawiki/latest/ 英文語言的最新dumps資料網址 https://dumps.wikimedia.org/enwiki/latest/ https://dumps.wikimedia.org/enwiki/20260201/ 中文語言的最新dumps資料網址 https://dumps.wikimedia.org/zhwiki/latest/ https://dumps.wikimedia.org/zhwiki/20260201/ 舉例這邊針對英文和中文各自bz2做下載 enwiki-latest-pages-articles.xml.bz2 zhwiki-latest-pages-articles.xml.bz2 wiki中文語料庫僅3GB相較英文WIKI的23.2G來的小很多 Solution1. wp2txt 剛好涉及到裝wp2txt https://...

【YOLOv8】姿態(動作)識別_俯臥撐計數

圖片
  用 Ultralytics YOLOv8 Pose 模型(yolov8x-pose.pt)搭配 AIGym 解決方案模組,對影片中的人物進行姿態辨識與伏地挺身(push-up)動作計數。 up_angle:如果角度超過這個值,代表身體在「上推」階段 down_angle:如果角度低於這個值,代表身體在「下壓」階段 kpts=[5, 7, 9],分別是左肩(left shoulder)、左肘(left elbow)、左手腕(left wrist) 用這三個點計算手臂夾角,以判斷 push-up 是否完成一個動作。 偵測深蹲的話kpts 就可以類似改成 [11,13,15] https://github.com/Alimustoofaa/YoloV8-Pose-Keypoint-Classification?tab=readme-ov-file 測試程式 import cv2 from ultralytics import solutions MODEL_PATH = "yolov8x-pose.pt" #yolov8x-pose.pt , yolo11n-pose.pt VIDEO_PATH = "fuwocheng.mp4" gym = solutions . AIGym( model = MODEL_PATH, kpts = [ 5 , 7 , 9 ], # 指定關鍵點:左肩-左肘-左手 up_angle = 100 , down_angle = 80 , line_width = 2 , show = False ) cap = cv2 . VideoCapture(VIDEO_PATH) if not cap . isOpened(): print ( "Error: Could not open video." ) exit () # ===== 新增:控制視窗大小與位置 ===== window_name = "Processed Frame" cv2 . namedWindow(window_name, cv2 . WINDOW_NORMAL) cv...

【YOLOv8】物件偵測與識別測試

圖片
  Yolo V8使用 pytorch 開發的,因此這邊採用Pycharm Community開發工具。 並進行Pytorch下載引入 開發測試環境Windows 11 電腦 Acer Predator PH315-54-72VQ 電競筆記型電腦 https://store.acer.com/zh-tw/ph315-54-72vq 處理器:Intel® Core™ i7-11800H 記憶體:32GB DDR4 3200MHz Memory 硬碟:512GB PCIe NVMe SSD 顯卡:NVIDIA® GeForce RTX™ 3070 記得先在Pycharm創建好Project-based的venv,這邊採用Python3.8。 之後依序執行已下指令把Pytorch需要的給裝一裝,安裝對應 CUDA 11.8 的 PyTorch 套件。 不要採用Anaconda內建虛擬環境提供的不支援GPU的Pytorch。 電腦有GPU顯卡用這下載方式的指令 pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 --no-cache-dir 電腦無GPU顯卡只能用CPU跑用這下載方式的指令 pip install torch torchvision torchaudio --no-cache-dir YOLO在演進到6之後版本就交由ultralytics這間公司團隊繼續精進研發。 到了第八版算是成熟也十分多產品在使用的版本。(目前最新還有出到11的樣子) pip install ultralytics CUDA 與 cuDNN 的關係與角色 CUDA(Compute Unified Device Architecture) 是 NVIDIA 開發的一套平行運算平台與程式設計模型,底層是用 C/C++ 所實作,允許開發者撰寫程式碼,並將運算密集的任務交由 GPU(圖形處理器) 處理。 CUDA 提供一組 API,可以讓像 Python、C++ 等高階語言編寫的程式,透過 CUDA 將資料與任務分派到 GPU 執行。 當 Python 呼叫如 TensorFlow、PyTorch 等深度學習框架中的 GPU 運算時,其實是透過這些框架內部...

深度估測技術研究_Depth Pro:在不到一秒的時間內獲得清晰的單目公制深度_用python結合Yolo11測試實作

圖片
  蘋果 AI 研究團隊於2024年10月,提出一款新模型「Depth Pro」,Depth Pro 在未知的新影像情境下,仍可立即準確估測深度,而無需額外學習或校準。 https://machinelearning.apple.com/research/depth-pro https://github.com/apple/ml-depth-pro?tab=readme-ov-file https://arxiv.org/pdf/2410.02073 提出了一個零鏡頭度量單目深度估計的基礎模型。 Depth Pro 模型合成了高解析度深度圖,具有無與倫比的清晰度和高頻細節。上圖中可看到比較靠近的呈現較深濃的紅色,較遠的則相對是冷綠色。 預測是不依賴於元數據(如相機內部函數)的。而且該模型速度很快,在 GPU 上可在 0.3 秒內生成 225 萬像素 depth map。不過我這邊於colab上實測還是稍微跑要點時間,大概要2~5秒網路延遲也有可能。 這些特性是由許多技術貢獻實現的,包括用於密集預測的高效多尺度視覺轉換器、結合真實和合成數據集以實現高度量精度以及精細邊界追蹤的訓練協議、估計深度圖中邊界精度的專用評估指標,以及來自單個圖像的最先進的焦距估計。 Depth Pro 提供了現階段最精準且高解析度的單目深度估測模型,適合各種互動式視覺應用。然而,模型仍有一些局限性,如對半透明或具有體積散射的物體效果有限(例如煙霧、水氣等)。 英文論文中出現的專業術語: Zero-shot learning (零樣本學習): 模型能處理訓練時未見過的資料,不需額外調整或微調。 Monocular depth estimation (單目深度估測): 僅憑單張2D影像估測出物體真實的深度距離。 Metric depth (度量深度): 預測的深度值具有真實尺度(例如以公尺為單位的絕對距離)。 Vision Transformer (ViT): 基於Transformer的深度學習架構,透過自注意力機制(Self-Attention)處理影像資料。 Multi-scale architecture (多尺度架構): 模型同時考慮不同解析度尺度的資訊,以更準確地捕捉局部細節與全域資訊。 Boundary tracing (邊界追蹤): 在深度估測任務中,準確識別和追蹤物體邊緣...