foo123/FILTER.js

Video and Image Processing and Computer Vision Library similar to OpenCV in pure JavaScript (Browser and Nodejs)

解決的問題

FILTER.js 是一個純 JavaScript 庫,專為在瀏覽器或 Node.js 中直接處理影像與影片、執行濾鏡與電腦視覺任務而設計。它提供一套完整的工具,用於操作視覺資料,無需依賴沉重的外部相依性。

工作原理

該庫使用 Image 類別作為視覺資料的代理,並提供 14 種通用濾鏡類型(如 ColorMatrix、ConvolutionMatrix 和形態學濾鏡)以及各種外掛模組。為確保高效率,它利用多種硬體加速技術:

  • CPU 並行處理:使用 Web Workers 和 Node.js 進程進行多執行緒執行。
  • GPU 並行處理:利用 WebGL 和 GLSL 濾鏡實現硬體加速。
  • WebAssembly (WASM):採用組合語言撰寫的濾鏡以實現更快的執行速度。

適用對象

需要在 JavaScript 環境中實現影像或影片操作、視覺效果或基本電腦視覺功能的開發者,無論是用於 Web 應用或伺服器端的 Node.js 應用。

主要特色

  • 跨平台:透過 HTML5 Canvas 在瀏覽器與 Node.js 中皆可運作。
  • 硬體加速:透明地混合 CPU 與 GPU 濾鏡,達成最佳效能。
  • 可擴展:支援自訂建構,開發者可僅選擇必要的濾鏡與外掛模組以減少套件大小。
  • 廣泛的濾鏡集合:包含灰階、模糊、浮雕與頻率域濾鏡等實作。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案