Kamera#
giriiş#
VEX AIR Drone, uçuş sırasında hem görüntü hem de video kaydedebilen, ön ve alt kısımda olmak üzere iki adet yerleşik kamera görevi gören Görüş Sensörü içerir. VEXcode AIR’de “kamera” kelimesi her zaman bu Görüş Sensörlerinden birini ifade eder. Örneğin, drone.camera.start_recording(FORWARD_CAMERA)gibi bir komutta, camera Görüş Sensörlerini ifade eder ve FORWARD_CAMERA öne bakanı seçer.
VEX AIR Drone Kontrol Cihazından video kayıtlarını ve görüntüleri aktarmak için, kontrol cihazını bilgisayarınıza bağlayın. Cihaz, bir yığın depolama aygıtı (USB belleğe benzer) olarak görünecek ve dosyaları doğrudan kopyalamanıza olanak tanıyacaktır. Bir projeyi bitirdikten sonra, kopyalama işlemine başlamadan önce kontrol cihazının droneden tüm görüntüleri veya kayıtları indirmesini yaklaşık bir dakika bekleyin.
Aşağıda mevcut tüm yöntemlerin listesi bulunmaktadır:
İşlemler
start_recording– Bir Görüntü Sensöründen video kaydı yapar.stop_recording– Bir Görüntü Sensöründen kaydı durdurur.capture_image– Bir Görüntü Sensöründen bir görüntü yakalar.
Değiştiriciler
show_camera– VEX AIR Drone Kontrol Cihazında seçilen Görüş Sensörünü gösterir.hide_camera– Kontrol cihazındaki Görüntü Sensörü görüntüsünü gizler.set_overlay_reticle– Yer paylaşımı nişangahını gösterir veya gizler.set_overlay_telemetry– Telemetri verilerini gösterir veya gizler.
Alıcılar
is_recording– Görüntü Sensörünün kayıt yapıp yapmadığını döndürür.get_recording_time– Kayda harcanan süreyi döndürür.
Eylemler#
start_recording#
start_recording , belirtilen Görüntü Sensörü ile kaydı başlatır.
Kayıtları görüntüleme ve alma hakkında bilgi için buraya gidin.
Kullanım:
drone.camera.start_recording(camera)
Parametreler |
Tanım |
|---|---|
|
Görüntü Sensörü ile kayıt yapılacak seçenek: |
# 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 belirtilen Görüntü Sensörünün kaydını durdurur.
Kayıtları görüntüleme ve alma hakkında bilgi için buraya gidin.
Kullanım:
drone.camera.stop_recording(camera)
Parametreler |
Tanım |
|---|---|
|
Görüntü sensörünü kullanarak kaydı durdurun: |
# 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 , belirtilen Görüntü Sensörü ile bir fotoğraf çeker.
Yakalanan görüntüleri görüntüleme ve alma hakkında bilgi için buraya gidin.
Kullanım:
drone.camera.capture_image(camera)
Parametreler |
Tanım |
|---|---|
|
Fotoğraf çekmek için kullanılacak Görüntü Sensörü: |
# 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)
Mutatörler#
show_camera#
show_camera komutu, geçerli ekran modunu belirtilen Görüntü Sensörü görüntüsüne ayarlar.
Kullanım:
controller.screen.show_camera(camera)
Parametreler |
Tanım |
|---|---|
|
Görüntü Sensöründen görüntülenecek veri: |
# 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 komutu, belirtilen Görüntü Sensörünün görüntüsünü gizler.
Kullanım:
controller.screen.hide_camera()
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
# 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 komutu, bindirme nişangahını etkinleştirir veya devre dışı bırakır. Nişangah, nişan almaya veya nesneleri hizalamaya yardımcı olmak için kameranın görüş alanında görünen, artı işareti gibi görsel bir işarettir.
Varsayılan olarak, nişangah yerleşimi, projenin başlangıcında yalnızca aşağıya bakan Görüş Sensöründe True olarak ayarlanır.
Usage:
controller.screen.set_overlay_reticle(state)
Parametreler |
Tanım |
|---|---|
|
Üst üste bindirilmiş nişangahın durumu: |
# 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 komutu, drone’un telemetri verilerinin kontrol cihazının ekranında görünürlüğünü etkinleştirir veya devre dışı bırakır. Telemetri, drone uçarken veya bir proje çalıştırırken drone’dan gelen canlı verilerdir.
Varsayılan olarak, telemetri veri katmanı proje başlangıcında True olarak ayarlanır.
Usage:
controller.screen.set_overlay_telemetry(state)
Parametreler |
Tanım |
|---|---|
|
Telemetri verilerinin durumu: |
# 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)
Getters#
is_recording#
is_recording , belirtilen bir Görüntü Sensörünün şu anda kayıt yapıp yapmadığını gösteren bir Boolean değeri döndürür.
True– Belirtilen Görüntü Sensörü kayıt yapıyor.False– Belirtilen Görüntü Sensörü kayıt yapmıyor.
Kullanım:
drone.camera.is_recording(camera)
Parametreler |
Tanım |
|---|---|
|
Görüntü Sensörü, aşağıdaki kameraların kayıt durumunu kontrol eder: |
# 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 , belirli bir Vision Sensor’ün kayıt yaptığı süreyi saniye cinsinden ondalık (float) olarak döndürür.
Kullanım:
drone.camera.get_recording_time(camera)
Parametreler |
Tanım |
|---|---|
|
Görüntü Sensörü, aşağıdaki kameraların kayıt süresini kontrol eder: |
# 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)