कैमरा#
परिचय#
VEX AIR ड्रोन में दो विज़न सेंसर लगे हैं जो इसके ऑनबोर्ड कैमरों का काम करते हैं—एक आगे की तरफ और एक नीचे की तरफ। ये उड़ान के दौरान तस्वीरें और वीडियो दोनों कैप्चर कर सकते हैं। VEX कोड AIR में, “कैमरा” शब्द हमेशा इन विज़न सेंसरों में से किसी एक को संदर्भित करता है। उदाहरण के लिए, drone.camera.start_recording(FORWARD_CAMERA)जैसे कमांड में, camera विज़न सेंसरों को संदर्भित करता है, और FORWARD_CAMERA आगे वाले सेंसर का चयन करता है।
VEX AIR ड्रोन कंट्रोलर से वीडियो रिकॉर्डिंग और इमेज ट्रांसफर करने के लिए, कंट्रोलर को अपने कंप्यूटर से कनेक्ट करें। यह एक मास-स्टोरेज डिवाइस (USB ड्राइव की तरह) के रूप में दिखाई देगा, जिससे आप फाइलों को सीधे कॉपी कर सकते हैं। प्रोजेक्ट समाप्त करने के बाद, कॉपी करने का प्रयास करने से पहले, ड्रोन से इमेज या रिकॉर्डिंग डाउनलोड होने के लिए कंट्रोलर को लगभग एक मिनट तक प्रतीक्षा करें।
नीचे उपलब्ध सभी तरीकों की सूची दी गई है:
कार्यवाही
start_recording– विज़न सेंसर से वीडियो रिकॉर्ड करता है।stop_recording– विज़न सेंसर से रिकॉर्डिंग बंद करता है।capture_image– विज़न सेंसर से एक छवि कैप्चर करता है।
म्यूटेटर्स
show_camera– VEX AIR ड्रोन कंट्रोलर पर चयनित विज़न सेंसर दिखाता है।hide_camera– नियंत्रक पर विज़न सेंसर फ़ीड छुपाता है।set_overlay_reticle– ओवरले रेटिकल दिखाता या छुपाता है।set_overlay_telemetry– टेलीमेट्री डेटा दिखाता या छुपाता है।
गेटर्स
is_recording– यह बताता है कि विज़न सेंसर रिकॉर्डिंग कर रहा है या नहीं।get_recording_time– रिकॉर्डिंग में बिताया गया समय लौटाता है।
कार्रवाई#
start_recording#
start_recording निर्दिष्ट विज़न सेंसर के साथ रिकॉर्डिंग शुरू करता है।
रिकॉर्डिंग देखने और पुनः प्राप्त करने के बारे में जानकारी के लिए, यहाँ जाएँ।
उपयोग:
drone.camera.start_recording(camera)
पैरामीटर |
विवरण |
|---|---|
|
रिकॉर्डिंग के लिए विज़न सेंसर: |
# Press button 7 to end recording
def end_recording():
drone.camera.stop_recording(FORWARD_CAMERA)
drone.land()
controller.button7.pressed(end_recording)
# Record a video as you fly around
controller.screen.show_camera(FORWARD_CAMERA)
drone.take_off(climb_to=500)
drone.camera.start_recording(FORWARD_CAMERA)
while True:
# Move with controller
drone.move_with_vectors(
forward=controller.axis4.position(),
rightward=controller.axis3.position(),
upward=controller.axis1.position(),
rotation=controller.axis2.position()
)
wait(5, MSEC)
stop_recording#
stop_recording निर्दिष्ट विज़न सेंसर की रिकॉर्डिंग बंद कर देता है।
रिकॉर्डिंग देखने और पुनः प्राप्त करने के बारे में जानकारी के लिए, यहाँ जाएँ।
उपयोग:
drone.camera.stop_recording(camera)
पैरामीटर |
विवरण |
|---|---|
|
रिकॉर्डिंग बंद करने के लिए विज़न सेंसर: |
# Press button 7 to end recording
def end_recording():
drone.camera.stop_recording(FORWARD_CAMERA)
drone.land()
controller.button7.pressed(end_recording)
# Record a video as you fly around
controller.screen.show_camera(FORWARD_CAMERA)
drone.take_off(climb_to=500)
drone.camera.start_recording(FORWARD_CAMERA)
while True:
# Move with controller
drone.move_with_vectors(
forward=controller.axis4.position(),
rightward=controller.axis3.position(),
upward=controller.axis1.position(),
rotation=controller.axis2.position()
)
wait(5, MSEC)
capture_image#
capture_image निर्दिष्ट विज़न सेंसर के साथ एक तस्वीर लेता है।
कैप्चर की गई छवियों को देखने और पुनः प्राप्त करने के बारे में जानकारी के लिए, यहाँ जाएँ।
उपयोग:
drone.camera.capture_image(camera)
पैरामीटर |
विवरण |
|---|---|
|
तस्वीर लेने के लिए विज़न सेंसर: |
# Press button 7 to take pictures
def take_picture():
drone.camera.capture_image(FORWARD_CAMERA)
controller.button7.pressed(take_picture)
# Take pictures while you control the drone
controller.screen.show_camera(FORWARD_CAMERA)
drone.take_off(climb_to=500)
while True:
# Move with controller
drone.move_with_vectors(
forward=controller.axis4.position(),
rightward=controller.axis3.position(),
upward=controller.axis1.position(),
rotation=controller.axis2.position()
)
wait(5, MSEC)
उत्परिवर्तक#
show_camera#
show_camera वर्तमान स्क्रीन मोड को निर्दिष्ट विज़न सेंसर फ़ीड पर सेट करता है।
उपयोग:
controller.screen.show_camera(camera)
पैरामीटर |
विवरण |
|---|---|
|
विज़न सेंसर फ़ीड प्रदर्शित करने के लिए: |
# Switch camera feeds after 3 seconds
controller.screen.show_camera(DOWNWARD_CAMERA)
wait(3, SECONDS)
controller.screen.show_camera(FORWARD_CAMERA)
hide_camera#
hide_camera निर्दिष्ट विज़न सेंसर के फ़ीड को छुपाता है।
उपयोग:
controller.screen.hide_camera()
पैरामीटर |
विवरण |
|---|---|
इस विधि के कोई मानदंड नहीं हैं। |
# Hide camera feed after 3 seconds
controller.screen.show_camera(FORWARD_CAMERA)
wait(3, SECONDS)
controller.screen.hide_camera()
set_overlay_reticle#
set_overlay_reticle ओवरले रेटिकल को सक्षम या अक्षम करता है। रेटिकल एक दृश्य चिह्न होता है, जैसे क्रॉसहेयर, जो कैमरे के दृश्य में वस्तुओं को निशाना बनाने या संरेखित करने में सहायता के लिए दिखाई देता है।
डिफ़ॉल्ट रूप से, प्रोजेक्ट की शुरुआत में रेटिकल ओवरले को True पर सेट किया जाता है, केवल नीचे की ओर स्थित विज़न सेंसर पर।
Usage:
controller.screen.set_overlay_reticle(state)
पैरामीटर |
विवरण |
|---|---|
|
ओवरले रेटिकल की स्थिति: |
# Hide the reticle when not aligning to a landing area
controller.screen.show_camera(DOWNWARD_CAMERA)
drone.take_off(climb_to=500)
controller.screen.set_overlay_reticle(False)
while True:
# Move with controller
drone.move_with_vectors(
forward=controller.axis4.position(),
rightward=controller.axis3.position(),
upward=controller.axis1.position(),
rotation=controller.axis2.position()
)
wait(5, MSEC)
set_overlay_telemetry#
set_overlay_telemetry कमांड ड्रोन के टेलीमेट्री डेटा को कंट्रोलर की स्क्रीन पर दिखाने या न दिखाने की सुविधा देता है। टेलीमेट्री ड्रोन से प्राप्त लाइव डेटा होता है, जो उड़ान भरते समय या किसी प्रोजेक्ट को चलाते समय प्राप्त होता है।
डिफ़ॉल्ट रूप से, किसी प्रोजेक्ट की शुरुआत में टेलीमेट्री डेटा ओवरले को True पर सेट किया जाता है।
Usage:
controller.screen.set_overlay_telemetry(state)
पैरामीटर |
विवरण |
|---|---|
|
टेलीमेट्री डेटा की स्थिति: |
# Clear the camera video for better visibility
controller.screen.show_camera(FORWARD_CAMERA)
drone.take_off(climb_to=500)
controller.screen.set_overlay_telemetry(False)
while True:
# Move with controller
drone.move_with_vectors(
forward=controller.axis4.position(),
rightward=controller.axis3.position(),
upward=controller.axis1.position(),
rotation=controller.axis2.position()
)
wait(5, MSEC)
टिककर खेल#
is_recording#
is_recording एक बूलियन मान लौटाता है जो यह दर्शाता है कि क्या कोई निर्दिष्ट विज़न सेंसर वर्तमान में रिकॉर्डिंग कर रहा है।
True– निर्दिष्ट विज़न सेंसर रिकॉर्डिंग कर रहा है।False– निर्दिष्ट विज़न सेंसर रिकॉर्डिंग नहीं कर रहा है।
उपयोग:
drone.camera.is_recording(camera)
पैरामीटर |
विवरण |
|---|---|
|
विज़न सेंसर रिकॉर्डिंग स्थिति की जाँच करने के लिए: |
# Use button 7 to start and stop recording
def toggle_recording():
if drone.camera.is_recording(FORWARD_CAMERA):
drone.camera.stop_recording(FORWARD_CAMERA)
else:
drone.camera.start_recording(FORWARD_CAMERA)
controller.button7.pressed(toggle_recording)
# Make video recordings while you control the drone
controller.screen.show_camera(FORWARD_CAMERA)
drone.take_off(climb_to=500)
while True:
# Move with controller
drone.move_with_vectors(
forward=controller.axis4.position(),
rightward=controller.axis3.position(),
upward=controller.axis1.position(),
rotation=controller.axis2.position()
)
wait(5, MSEC)
get_recording_time#
get_recording_time एक विशिष्ट विज़न सेंसर द्वारा रिकॉर्डिंग किए गए समय की मात्रा को सेकंड में दशमलव (फ्लोट) के रूप में लौटाता है।
उपयोग:
drone.camera.get_recording_time(camera)
पैरामीटर |
विवरण |
|---|---|
|
विज़न सेंसर रिकॉर्डिंग समय की जाँच करने के लिए: |
# Record a video for 10 seconds
controller.screen.show_camera(FORWARD_CAMERA)
drone.camera.start_recording(FORWARD_CAMERA)
drone.take_off(climb_to=500)
while not (drone.camera.get_recording_time(FORWARD_CAMERA)) >= 10:
wait(5, MSEC)
drone.camera.stop_recording(FORWARD_CAMERA)