inferencejs संदर्भ
`inferencejs` के लिए संदर्भ, एक एज लाइब्रेरी जो रोबोफ्लो के साथ बनाए गए कंप्यूटर विज़न एप्लिकेशन को वेब/JavaScript वातावरण में तैनात करती है
इंस्टॉलेशन
यह लाइब्रेरी ब्राउज़र के भीतर उपयोग के लिए डिज़ाइन की गई है, जिसमें vite, webpack, parcel आदि जैसे बंडलर का उपयोग किया जाता है। मान लीजिए कि आपका बंडलर सेटअप है, आप निम्नलिखित कमांड चलाकर इंस्टॉल कर सकते हैं:
npm install inferencejs
शुरुआत करें
शुरुआत करें InferenceEngine
. यह एक बैकग्राउंड वर्कर शुरू करेगा जो मॉडल डाउनलोड और निष्पादित कर सकता है बिना यूज़र इंटरफेस को ब्लॉक किए।
import { InferenceEngine } from "inferencejs";
const PUBLISHABLE_KEY = "rf_a6cd..."; // अपने Roboflow से अपना खुद का publishable key यहाँ डालें
const inferEngine = new InferenceEngine();
const workerId = await inferEngine.startWorker("[PROJECT URL SLUG]", [VERSION NUMBER], PUBLISHABLE_KEY);
//मॉडल पर इनफेरेंस करें
const result = await inferEngine.infer(workerId, img);
API
InferenceEngine
new InferenceEngine()
एक नया InferenceEngine इंस्टेंस बनाता है।
startWorker(modelName: string, modelVersion: number, publishableKey: string): Promise<number>
दिए गए मॉडल के लिए एक नया वर्कर शुरू करता है और लौटाता है workerId
. महत्वपूर्ण- publishableKey
आवश्यक है और इसे Roboflow में आपके प्रोजेक्ट सेटिंग्स फोल्डर से प्राप्त किया जा सकता है।
infer(workerId: number, img: CVImage | ImageBitmap): Promise<Inference>
दिए गए worker के साथ एक इमेज पर इनफेर करें workerId
. img
का उपयोग करके बनाया जा सकता है new CVImage(HTMLImageElement | HTMLVideoElement | ImageBitmap | TFJS.Tensor)
या createImageBitmap
stopWorker(workerId: number): Promise<void>
दिए गए worker को रोकता है workerId
.
YOLOv8
YOLOv5
YOLOv8
YOLOv5
का उपयोग करके इनफेरेंस करने का परिणाम InferenceEngine
YOLOv8 या YOLOv5 ऑब्जेक्ट डिटेक्शन मॉडल पर निम्न प्रकार की एक array होती है:
type RFObjectDetectionPrediction = {
class?: string;
confidence?: number;
bbox?: {
x: number;
y: number;
width: number;
height: number;
};
color?: string;
};
GazeDetections
GazeDetections
का उपयोग करके इनफेरेंस करने का परिणाम InferenceEngine
Gaze मॉडल पर। निम्न प्रकार की एक array:
type GazeDetections = {
leftEye: { x: number; y: number };
rightEye: { x: number; y: number };
yaw: number;
pitch: number;
}[];
leftEye.x
बाएँ आँख की x स्थिति, 0 और 1 के बीच एक फ्लोटिंग पॉइंट संख्या के रूप में, इनपुट इमेज की चौड़ाई के प्रतिशत में मापी गई।
leftEye.y
बाएँ आँख की y स्थिति, 0 और 1 के बीच एक फ्लोटिंग पॉइंट संख्या के रूप में, इनपुट इमेज की ऊँचाई के प्रतिशत में मापी गई।
rightEye.x
दाएँ आँख की x स्थिति, 0 और 1 के बीच एक फ्लोटिंग पॉइंट संख्या के रूप में, इनपुट इमेज की चौड़ाई के प्रतिशत में मापी गई।
rightEye.y
दाएँ आँख की y स्थिति, 0 और 1 के बीच एक फ्लोटिंग पॉइंट संख्या के रूप में, इनपुट इमेज की ऊँचाई के प्रतिशत में मापी गई।
yaw
विज़ुअल गेज़ का यॉ, रैडियन में मापा गया।
pitch
विज़ुअल गेज़ का पिच, रैडियन में मापा गया।
CVImage
CVImage
एक क्लास जो एक इमेज को दर्शाती है जिसे कंप्यूटर विज़न कार्यों के लिए उपयोग किया जा सकता है। यह इमेज को बदलने और कन्वर्ट करने के लिए विभिन्न विधियाँ प्रदान करती है।
कंस्ट्रक्टर
The CVImage(image)
क्लास कंस्ट्रक्टर एक नए इंस्टेंस को इनिशियलाइज़ करता है। यह निम्न प्रकारों में से एक इमेज स्वीकार करता है:
ImageBitmap
: एक वैकल्पिकImageBitmap
इमेज का प्रतिनिधित्व।HTMLImageElement
: एक वैकल्पिकHTMLImageElement
इमेज का प्रतिनिधित्व।tf.Tensor
: एक वैकल्पिकtf.Tensor
इमेज का प्रतिनिधित्व।tf.Tensor4D
: एक वैकल्पिक 4Dtf.Tensor
इमेज का प्रतिनिधित्व।
विधियाँ
bitmap()
एक प्रॉमिस लौटाता है जो ImageBitmap
इमेज के प्रतिनिधित्व को देता है। यदि इमेज पहले से ही बिटमैप है, तो यह कैश्ड बिटमैप लौटाता है।
tensor()
एक tf.Tensor
इमेज का प्रतिनिधित्व लौटाता है। यदि इमेज पहले से ही टेन्सर है, तो यह कैश्ड टेन्सर लौटाता है।
tensor4D()
एक प्रॉमिस लौटाता है जो 4D tf.Tensor
इमेज के प्रतिनिधित्व को देता है। यदि इमेज पहले से ही 4D टेन्सर है, तो यह कैश्ड 4D टेन्सर लौटाता है।
array()
एक प्रॉमिस लौटाता है जो इमेज के जावास्क्रिप्ट array प्रतिनिधित्व को देता है। यदि इमेज पहले से ही टेन्सर है, तो यह टेन्सर को array में बदलता है।
dims()
एक array लौटाता है जिसमें इमेज के आयाम होते हैं। यदि इमेज बिटमैप है, तो यह लौटाता है [width, height]
. यदि इमेज टेन्सर है, तो यह टेन्सर का आकार लौटाता है। यदि इमेज एक HTML इमेज एलिमेंट है, तो यह लौटाता है [width, height]
.
dispose()
इमेज के टेन्सर प्रतिनिधित्व को मेमोरी से मुक्त करने के लिए डिस्पोज़ करता है।
static fromArray(array: tf.TensorLike)
एक नया बनाता है CVImage
दिए गए टेन्सर-जैसे array से इंस्टेंस।
Last updated
Was this helpful?