वेब ब्राउज़र

roboflow.js के साथ एज पर रीयलटाइम भविष्यवाणियाँ

अधिकांश व्यवसायिक अनुप्रयोगों के लिए, Hosted API उपयुक्त है। लेकिन कई उपभोक्ता अनुप्रयोगों और कुछ एंटरप्राइज उपयोग मामलों के लिए, सर्वर-होस्टेड मॉडल व्यावहारिक नहीं है (उदाहरण के लिए, यदि आपके उपयोगकर्ता बैंडविड्थ सीमित हैं या उन्हें उस से कम विलंबता चाहिए जो आप रिमोट API का उपयोग करके प्राप्त कर सकते हैं)।

inferencejs एक कस्टम लेयर है Tensorflow.js के ऊपर, जो Roboflow पर प्रशिक्षित मॉडलों का उपयोग करके JavaScript के माध्यम से रीयल-टाइम इनफेरेंस सक्षम करता है।

देखें inferencejs संदर्भ यहाँ

शिक्षण संसाधन

समर्थित मॉडल

inferencejs वर्तमान में इन मॉडल आर्किटेक्चर को सपोर्ट करता है:

इंस्टॉलेशन

अपने प्रोजेक्ट में inference जोड़ने के लिए, बस npm का उपयोग करके इंस्टॉल करें या अपनी पेज के <head> टैग नहीं है।

npm install inferencejs
<script src="https://cdn.jsdelivr.net/npm/inferencejs"></script>

इनिशियलाइज़िंग inferencejs

प्रमाणीकरण

आप अपना publishable_key Roboflow workspace सेटिंग्स से प्राप्त कर सकते हैं।

शुरुआत करें इम्पोर्ट करके InferenceEngine और एक नया इनफेरेंस इंजन ऑब्जेक्ट बनाएं

inferencejs वेबवर्कर्स का उपयोग करता है ताकि कई मॉडल बिना मुख्य UI थ्रेड को ब्लॉक किए उपयोग किए जा सकें। प्रत्येक मॉडल को InferenceEngine हमारे वेबवर्कर मैनेजर के माध्यम से लोड किया जाता है, जो आपके लिए आवश्यक थ्रेड प्रबंधन को अमूर्त करता है।

import { InferenceEngine } from "inferencejs";
const inferEngine = new InferenceEngine();

अब हम roboflow से मॉडल लोड कर सकते हैं अपने publishable_key और मॉडल मेटाडेटा (मॉडल नाम और संस्करण) के साथ-साथ कॉन्फ़िगरेशन पैरामीटर जैसे कॉन्फिडेंस थ्रेशोल्ड और ओवरलैप थ्रेशोल्ड का उपयोग करके।

const workerId = await inferEngine.startWorker("[model name]", "[version]", "[publishable key]");

inferencejs अब एक वर्कर शुरू करेगा जो चुने गए मॉडल को चलाता है। लौटाया गया वर्कर आईडी InferenceEngine के साथ मेल खाता है, जिसका हम इनफेरेंस के लिए उपयोग करेंगे। मॉडल पर इनफर करने के लिए हम infer मेथड का उपयोग InferenceEngine.

आइए एक इमेज लोड करें और अपने वर्कर पर इनफर करें।

const image = document.getElementById("image"); // id `image` वाले इमेज एलिमेंट को प्राप्त करें
const predictions = await inferEngine.infer(workerId, image); // इमेज पर इनफर करें

यह विभिन्न इमेज फॉर्मेट्स (HTMLImageElement, HTMLVideoElement, ImageBitmapया TFJS Tensor).

यह एक प्रेडिक्शन की ऐरे लौटाता है (एक क्लास के रूप में, इस मामले में RFObjectDetectionPrediction )

कॉन्फ़िगरेशन

यदि आप कस्टमाइज़ और कॉन्फ़िगर करना चाहते हैं कि inferencejs कैसे अपनी प्रेडिक्शन को फ़िल्टर करता है, तो आप वर्कर बनाते समय पैरामीटर पास कर सकते हैं।

const configuration = {scoreThreshold: 0.5, iouThreshold: 0.5, maxNumBoxes: 20};
const workerId = await inferEngine.startWorker("[model name]", "[version]", "[publishable key]", configuration);

या आप इनफेरेंस के समय कॉन्फ़िगरेशन विकल्प पास कर सकते हैं

const configuration = {
    scoreThreshold: 0.5, 
    iouThreshold: 0.5, 
    maxNumBoxes: 20
};
const predictions = await inferEngine.infer(workerId, image, configuration);

Last updated

Was this helpful?