SAM3 वीडियो ट्रैकर
SAM3 के स्ट्रीमिंग कॉन्सेप्ट ट्रैकर के साथ टेक्स्ट प्रॉम्प्ट से वीडियो फ़्रेमों के बीच वस्तुओं को सेगमेंट और ट्रैक करें।
सेगमेंट एनीथिंग 3 को लाइव वीडियो स्ट्रीम पर फ़्रेम-दर-फ़्रेम चलाएँ, प्रति-वीडियो समयिक मेमोरी बनाए रखते हुए ताकि फ़्रेमों के बीच ऑब्जेक्ट पहचानें सुरक्षित रहें।
ट्रैक करने के लिए अवधारणाएँ पाठ के रूप में प्रदान करें class_names (जैसे ["व्यक्ति", "फोर्कलिफ्ट"]) - किसी अपस्ट्रीम डिटेक्टर की आवश्यकता नहीं है। SAM3 हर फ़्रेम पर संयुक्त डिटेक्शन और ट्रैकिंग चलाता है, इसलिए स्ट्रीम के बीच में दृश्य में प्रवेश करने वाले किसी अवधारणा से मेल खाने वाले ऑब्जेक्ट्स स्वचालित रूप से पकड़ लिए जाते हैं और उन्हें नया tracker_ids. प्रत्येक उत्सर्जित मास्क अपने वर्ग नाम के रूप में वह प्रॉम्प्ट लेता है जिससे वह मेल खाता है, और मॉडल के डिटेक्शन स्कोर को अपनी विश्वसनीयता के रूप में।
यह ब्लॉक state को आधारित करके एक ही SAM3 स्ट्रीमिंग मॉडल को कई वीडियो स्ट्रीम्स में मल्टिप्लेक्स करता है video_metadata.video_identifier; किसी सेशन को केवल तब फिर से seed किया जाता है जब स्रोत स्ट्रीम पुनः शुरू होती है या class_names बदलती है। डिटेक्टर-चालित (बॉक्स-प्रॉम्प्टेड) वीडियो ट्रैकिंग के लिए, इसके बजाय SAM2 Video Tracker ब्लॉक का उपयोग करें।
एक स्थायी WebRTC सत्र में उपयोग के लिए अभिप्रेत, जो एक समय में एक फ्रेम देता है और प्रत्येक फ्रेम को वीडियो मेटाडेटा के साथ टैग करता है।
प्रकार पहचानकर्ता
स्टेप में निम्नलिखित पहचानकर्ता का उपयोग करें "type" फ़ील्ड: roboflow_core/sam3_video@v1 अपने वर्कफ़्लो में ब्लॉक को एक स्टेप के रूप में जोड़ने के लिए।
गुण
नाम
प्रकार
विवरण
संदर्भ
name
str
इस स्टेप के लिए एक विशिष्ट पहचानकर्ता दर्ज करें..
❌
class_names
Union[List[str], str]
सेगमेंट और ट्रैक करने के लिए अवधारणाएँ, वाक्यांशों की एक सूची (या कॉमा से अलग की गई एकल स्ट्रिंग) के रूप में। प्रत्येक उत्सर्जित मास्क अपने वर्ग नाम के रूप में वह अवधारणा लेता है जिससे वह मेल खाता है..
✅
model_id
str
स्ट्रीमिंग SAM3 मॉडल आईडी, जिसे द्वारा निर्धारित किया गया inference_models..
✅
थ्रेशहोल्ड
float
उत्सर्जित मास्कों के लिए न्यूनतम डिटेक्शन स्कोर। स्कोर SAM3 के प्रति-ऑब्जेक्ट अवधारणा डिटेक्शन हेड से आते हैं..
✅
यह संदर्भ स्तंभ यह इंगित करता है कि संपत्ति को वर्कफ़्लो रनटाइम में उपलब्ध गतिशील मानों के साथ पैरामीटराइज़ किया जा सकता है वर्कफ़्लो रनटाइम। देखें बाइंडिंग्स अधिक जानकारी के लिए।
रनटाइम संगतता
सॉफ्ट - रनटाइम hosted_serverless, dedicated_deployment; निष्पादन दूरस्थ; इनपुट वीडियो : ब्लॉक प्रति-वीडियो स्थिति को प्रक्रिया मेमोरी में बनाए रखता है (video_metadata.video_identifier द्वारा कुंजीबद्ध)। स्टेटलेस या मल्टी-रिप्लिका HTTP रनटाइम्स पर दूरस्थ स्टेप निष्पादन के साथ, क्रमिक अनुरोधों को अलग-अलग वर्कर प्रक्रियाएँ सर्व कर सकती हैं, इसलिए कॉल्स के बीच स्थिति रीसेट हो जाती है और आउटपुट ट्रैकिंग / काउंटिंग / एग्रीगेशन के लिए अर्थहीन हो जाता है। स्थिर फ़्रेम-से-फ़्रेम परिणामों के लिए एक स्थायी WebRTC सत्र में स्थानीय स्टेप निष्पादन का उपयोग करें।
कठिन - रनटाइम self_hosted_cpu; निष्पादन स्थानीय : एक GPU की आवश्यकता है; स्ट्रीमिंग SAM3 वीडियो मॉडल को CUDA चाहिए।
सॉफ्ट - इनपुट छवि : ब्लॉक वीडियो या दोहराए गए-फ़्रेम वर्कफ़्लो से समयगत संदर्भ पर निर्भर करता है। एक स्थिर छवि/फ़ोटो के साथ, ट्रैक करने, तुलना करने, समेकित करने या दृश्यीकृत करने के लिए कोई अर्थपूर्ण इतिहास नहीं होता, इसलिए ब्लॉक बहुत कम या कोई लाभ नहीं देता।
इनपुट और आउटपुट बाइंडिंग्स
उपलब्ध कनेक्शन उसके बाइंडिंग प्रकारों पर निर्भर करते हैं। देखें कि कौन-से बाइंडिंग प्रकार SAM3 वीडियो ट्रैकर संस्करण v1 है।
इनपुट और आउटपुट बाइंडिंग्स
इनपुट
छवियाँ(छवि): जिस छवि पर अनुमान लगाना है..class_names(Union[list_of_values,string]सेगमेंट और ट्रैक करने के लिए अवधारणाएँ, वाक्यांशों की एक सूची (या कॉमा से अलग की गई एकल स्ट्रिंग) के रूप में। प्रत्येक उत्सर्जित मास्क अपने वर्ग नाम के रूप में वह अवधारणा लेता है जिससे वह मेल खाता है..model_id(roboflow_model_id): स्ट्रीमिंग SAM3 मॉडल आईडी जिसे द्वारा निर्धारित किया गयाinference_models..थ्रेशहोल्ड(float): उत्सर्जित मास्कों के लिए न्यूनतम डिटेक्शन स्कोर। स्कोर SAM3 के प्रति-ऑब्जेक्ट अवधारणा डिटेक्शन हेड से आते हैं..
आउटपुट
predictions(instance_segmentation_prediction): sv.Detections(...) object के रूप में पहचाने गए bounding boxes और segmentation masks के साथ prediction।
अंतिम अपडेट
क्या यह उपयोगी था?