Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Jalankan sapuan simulasi mengemudi otonom dengan CARLA
Tutorial ini memandu Anda menjalankan sapuan parameter simulasi mengemudi otonom
Pekerjaan menjalankan skenario cut-in perubahan jalur di mana kendaraan NPC mulai di belakang kendaraan ego, berakselerasi untuk memposisikan dirinya 20 meter di depan ego selama fase maju 105 detik, kemudian memotong jalur ego. Ini menyapu kecepatan ego yang dapat dikonfigurasi, kecepatan NPC, dan jarak awal NPC, menciptakan tugas untuk setiap kombinasi parameter (default 2 × 2 × 2 = 8 tugas). Setiap tugas menangkap data multi-sensor dari sudut pandang kamera yang Anda pilih dan menghasilkan output berikut:
-
Bingkai RGB dari setiap sudut pandang kamera yang dipilih
-
Kerangka segmentasi semantik
-
Awan titik LiDAR ()
.ply -
Kotak pembatas 2D dan 3D (format KITTI)
-
Per-camera video skenario (H.264 MP4)
-
Video grid yang dijahit (jika Anda memilih beberapa kamera)
Video berikut menunjukkan alur kerja penyapuan simulasi CARLA di Deadline Cloud.
Perkiraan waktu: 1-2 jam, termasuk pembuatan image Docker. Tugas biasanya diselesaikan dalam waktu sekitar 13 menit masing-masing.
Menjalankan tutorial ini dikenakan biaya untuk instans pekerja GPU yang memproses tugas dan untuk penyimpanan gambar Amazon ECR.
Gambaran umum
Untuk menyelesaikan tutorial ini, ikuti langkah-langkah berikut:
-
Lengkapi prasyarat.
-
Siapkan peternakan Anda.
-
Membangun dan mendorong image Docker.
-
Kirim pekerjaan simulasi.
-
Pantau pekerjaan.
-
Tinjau output.
-
Pembersihan sumber daya
Prasyarat
Sebelum Anda mulai, selesaikan pengaturan berikut:
-
Buat AWS akun
jika Anda belum memilikinya, pastikan akun tersebut memiliki akses ke instans GPU ( g6.4xlargedisarankan). -
Instal Docker
secara lokal untuk membangun image CARLA. -
Buat repositori
Amazon ECR di akun Anda untuk meng-host gambar yang dibuat. -
Instal De adline Cloud CLI
secara lokal.
Siapkan peternakan Anda
Anda memerlukan farm Deadline Cloud dengan antrian yang memiliki lingkungan antrian conda (channel:conda-forge, packages:ffmpeg) dan armada GPU (minimal: 1 GPU NVIDIA dengan 16 vCPU dan memori 64 GiB).
Izin IAM — Peran antrian Anda memerlukan izin tarik Amazon ECR, karena skrip tugas berjalan docker pull di bawah kredentif peran antrian. Lampirkan kebijakan seperti berikut ini:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage", "ecr:BatchCheckLayerAvailability" ], "Resource": "arn:aws:ecr:REGION:ACCOUNT_ID:repository/*" }, { "Effect": "Allow", "Action": "ecr:GetAuthorizationToken", "Resource": "*" } ] }
Konfigurasi host armada — Pekerja armada Anda membutuhkan Docker dan NVIDIA Container Toolkit. Lampirkan skrip konfigurasi host Docker dan NVIDIA Container Toolkit GitHub
Membangun dan mendorong image Docker
Pekerjaan berjalan di dalam wadah Docker berdasarkan image dasar:0.9.16 di Docker Hub carlasim/carla. scenario_runner, dan skrip titik masuk dan tangkapan sehingga setiap tugas Deadline Cloud dapat mem-boot CARLA, menjalankan skenario mengemudi, dan merekam data sensor dalam satu wadah.
Untuk membangun dan mendorong image Docker
-
Buat repositori Amazon ECR jika Anda tidak memilikinya:
aws ecr create-repository --repository-name carla-deadline --regionREGION -
Dari
docker/direktoriautonomous_driving_carlabundel, buat gambar:cd docker/ docker build -t carla-deadline:0.9.16 .catatan
Dockerfile menarik
carlasim/carla:0.9.16dari Docker Hub sebagai gambar dasar. Versi pertama mengunduh sekitar 8 GB. -
Dorong gambar ke Amazon ECR:
aws ecr get-login-password --regionREGION| \ docker login --username AWS --password-stdinACCOUNT_ID.dkr.ecr.REGION.amazonaws.com docker tag carla-deadline:0.9.16 \ACCOUNT_ID.dkr.ecr.REGION.amazonaws.com/carla-deadline:0.9.16 docker pushACCOUNT_ID.dkr.ecr.REGION.amazonaws.com/carla-deadline:0.9.16
Kirim pekerjaan simulasi
Untuk mengirimkan pekerjaan dengan pengirim GUI
-
Dari direktori bundel, buka pengirim:
cd autonomous_driving_carla deadline bundle gui-submit . -
Pada tab Job-specific pengaturan, di bawah Pengaturan S kenario, konfigurasikan kecepatan ego, kecepatan NPC, dan jarak NPC sebagai bilangan bulat yang dipisahkan koma. Produk silang membuat grid tugas Anda.
-
Di bawah Camera Viewpoints, pilih kamera mana yang akan diambil. Depan adalah pilihan default. Posisi yang tersedia adalah Depan, Depan Kiri, Depan Kanan, Belakang, Kiri Belakang, dan Kanan Belakang.
-
Di bawah Lanjutan, atur URI Gambar Kontainer Anda ke
dan Wil AWS ayah tempat repositori Amazon ECR Anda berada.ACCOUNT_ID.dkr.ecr.REGION.amazonaws.com/carla-deadline:0.9.16 -
Pilih Kirim.
Atau, kirimkan dengan CLI:
deadline bundle submit . \ --farm-idFARM_ID\ --queue-idQUEUE_ID\ --name "CARLA Lane Change Demo" \ -p ImageURI=ACCOUNT_ID.dkr.ecr.REGION.amazonaws.com/carla-deadline:0.9.16 \ -p AwsRegion=REGION
Memantau tugas
Pantau kemajuan di konsol Deadline Cloud. Setiap tugas menunjukkan nilai parameternya (EgoSpeedNpcSpeed,,NpcDistance) dalam tabel tugas. Tugas biasanya diselesaikan dalam waktu sekitar 13 menit masing-masing.
Output log menunjukkan:
-
Pembuatan skenario dan nilai parameter
-
Boot dan kesiapan server CARLA
-
Kemajuan penangkapan sensor (jumlah bingkai per kamera)
-
Pengkodean video untuk setiap kamera
-
Jahitan video grid (jika Anda memilih beberapa kamera)
Tinjau output
Untuk mengunduh output
-
Setelah pekerjaan selesai, jalankan perintah unduh dari direktori yang sama yang Anda gunakan pada waktu pengiriman, sehingga
OutputDirjalur (default./outputs) diselesaikan ke tempat yang sama:deadline job download-output --job-idjob-id -
Deadline Cloud mengembalikan output ke
OutputDirdirektori yang Anda pilih saat mengirimkan pekerjaan.
Setiap tugas menghasilkan output dalam subdirektori yang dinamai parameternya:
outputs/ └── ego20_npc30_dist10/ ├── rgb/ │ ├── front/frame_000001.png ... frame_000062.png │ └── rear/frame_000001.png ... frame_000062.png ├── semantic/ │ ├── front/... │ └── rear/... ├── lidar/frame_000001.ply ... ├── bbox_2d/{front,rear}/frame_*.txt ├── bbox_3d/frame_*.txt └── video/ ├── front_scenario.mp4 ├── rear_scenario.mp4 └── grid_scenario.mp4
Keterbatasan yang Sudah Diketahui
-
Hanya Linux — Gambar CARLA Docker memerlukan host Linux dengan driver GPU NVIDIA. Pekerja harus berjalan di armada Linux.
-
x86_64 saja - Gambar CARLA Docker tidak mendukung arsitektur ARM.
-
Gambar mosaik — Pekerjaan menghasilkan gambar RGB/semantic mosaik saat Anda memilih 2 atau lebih kamera. Tata letaknya adalah 2 × 3 ketika semua 6 aktif, atau kisi yang lebih kecil sebaliknya.
-
Tingkat pengambilan skala dengan jumlah kamera — Skrip pengambilan menulis PNG secara serempak per flush. Dengan semua 6 kamera, setiap flush menulis 14 PNG, bukan 2 dengan satu kamera, dan peningkatan perlambatan I/O flush di bawah target 7 FPS. Encoder video ditetapkan pada 7 FPS, sehingga skenario yang sama menghasilkan video per kamera yang lebih panjang dengan beberapa kamera diaktifkan dan video multi-view yang lebih pendek dan lebih padat dengan banyak kamera diaktifkan. Desain sinkron ini merupakan pertukaran yang disengaja untuk menjaga arsitektur sampel tetap kecil dan mudah diadaptasi. Pipa produksi akan memparalelkan sensor. I/O
Bersihkan
Untuk menghindari biaya yang sedang berlangsung, bersihkan sumber daya yang Anda buat untuk tutorial ini:
Untuk membersihkan sumber daya tutorial
-
Jika Anda membuat armada GPU khusus untuk tutorial ini, hentikan atau hapus. Jika Anda menggunakan armada bersama yang sudah ada sebelumnya, biarkan tetap di tempatnya.
-
Hapus repositori
carla-deadlineAmazon ECR jika Anda tidak lagi membutuhkan gambar.
Sumber daya terkait
Sumber daya berikut memberikan informasi tambahan: