Sehari sebelum semalam, peminat Ronaldo berasa patah hati.
Pada Piala Dunia di Qatar pada 11 Disember, Portugal tewas kepada Maghribi dan berhenti di suku akhir perjalanan Piala Dunia Ronaldo berakhir dengan penyesalan.
Di bawah pencarian hangat #Cristiano Ronaldo berkata impian itu telah berakhir#, ramai peminat yang patah hati berkumpul.
Perlawanan antara Portugal dan Maghribi mendapat keputusan mengecewakan 0:1. Ronaldo menangis, Neymar menangis, siapa seterusnya?
Namun, sebelum saya dapat mengatasi kesedihan untuk Cristiano Ronaldo, malam ini kita mempunyai satu lagi pertarungan antara Messi dan Modric!
Takut hati tak tahan?
Kini, dengan model sebegitu, anda mungkin dapat mengetahui lebih awal sama ada permainan akan menjadi kekecewaan dalam masa 5 minit pertama permainan.
Jurutera pembelajaran mesin asing ini sentiasa berharap untuk menggabungkan penglihatan komputer (CV) dan Digabungkan dengan minatnya untuk bola sepak.
Tiga tahun lalu, dia cuba menggunakan YOLOv3 untuk mengesan dan mengelaskan pemain di gelanggang bola keranjang.
Piala Dunia FIFA semasa membuatkan dia mengambil idea ini semula.
Kali ini, dia menggunakan gabungan YOLOv5 dan ByteTRACK untuk mengesan pemain bola sepak di atas padang.
Pada mulanya, Skalski berharap untuk melangkau latihan model tersuai.
Dia berharap ia hanya akan mengambil masa beberapa jam dari mula hingga tamat dan menjadi kemenangan pantas.
Oleh kerana set data COCO popular yang digunakan untuk melatih model YOLOv5 dan YOLOv7 mengandungi dua kelas yang paling diminatinya - orang dan bola sukan, ini membuatkan dia sangat optimis dan berpendapat bahawa ia boleh Pusat pemeriksaan COCO untuk latihan.
Dia dengan pantas memuat turun berpuluh-puluh video perlawanan bola sepak pendek daripada perang data Bundesliga Kaggle dan menggunakan model pra-latihan untuk ujian.
Setelah mencuba pelbagai konfigurasi seperti iou_threshold, confidence_threshold, input_resolution, dll., dia mendapat keputusan yang mengecewakan.
Pada model ini, bola hanya dikesan pada beberapa bingkai video kerana nombornya terlalu kecil untuk model menjejaki objek yang kecil dan bergerak pantas dengan pasti.
Sebaliknya, model ini akan mengesan banyak objek berlebihan di luar padang - jurulatih, kipas, kakitangan penyelenggaraan, krew kamera, dll. Untuk objek berlebihan ini, logik pengesanan dan penapisan tambahan perlu ditulis, yang terlalu menyusahkan.
Dapat dilihat bahawa walaupun set data mengandungi kelas yang diperlukan, video yang digunakan untuk inferens pastinya sangat berbeza daripada imej yang digunakan untuk latihan.
Dalam kes ini, Skalski hanya boleh mencipta set datanya sendiri dan melatih model tersuai.
Melatih model tersuai memerlukan banyak usaha.
Sebab utamanya ialah untuk menganotasi imej, banyak kerja manual perlu dilakukan.
Disebabkan kesibukan masa, proses perlu dipermudahkan sebaik mungkin.
Skalski memilih beberapa dozen video daripada set data Kaggle yang disebutkan di atas dan menggunakan FFmpeg untuk mengekstrak 10 bingkai daripada setiap video - satu setiap 3 saat.
Langkah seterusnya ialah melakukan anotasi awal automatik pada imej dan menyimpan objek yang dikesan ke fail txt untuk menggunakan model YOLOv5 yang telah dilatih.
Langkah seterusnya ialah menambah baik data.
Walaupun komputer telah menyelesaikan 90% kerja, pembetulan manual masih mengambil masa Skalski hampir 5 jam.
Pada masa yang sama, dia turut memperkenalkan dua kelas objek tambahan - pengadil dan penjaga gol. Hasil kerja beliau boleh dilihat di Roboflow Universe. Set data adalah sumber terbuka dan percuma untuk digunakan oleh sesiapa sahaja.
Pra-latihan vs pengesan pemain bola sepak tersuai
Tersuai Latihan keputusan menjadikan Skalski yakin dalam menyelesaikan dua masalah di atas.
Tetapi malangnya, mungkin disebabkan ketidakseimbangan klasifikasi, model itu masih menghadapi masalah dalam mengesan kelas penjaga gol.
Jadi, seterusnya, Skalski menganggap setiap penjaga gol sebagai pemain bola sepak biasa.
Model Skalski, seperti set datanya, tersedia di Roboflow Universe. Hanya seret dan lepaskan imej ujian.
Skalski menggunakan ByteTRACK (SOTA Multi-Object Tracker 1) untuk mengesan objek dalam video.
ByteTRACK tidak menggunakan sebarang rangkaian saraf secara dalaman. Kuasa model ini datang sepenuhnya daripada matematik mudah: membandingkan kedudukan kotak sempadan merentas bingkai.
Perkara yang paling penting ialah ByteTRACK tidak bertanggungjawab untuk pengesanan, hanya penjejakan. Oleh itu, ia tidak memerlukan latihan berasingan seperti beberapa penjejak lain.
Oleh itu, ByteTRACK membolehkan kami menggantikan pengesan dengan mudah tanpa mereka bentuk semula keseluruhan seni bina kod.
Berikut ialah coretan kod yang dipermudahkan Dalam projek anda sendiri, anda perlu menggunakan kod permulaan ByteTRACK.
Dalam projek ByteTRACK, setiap objek pada bingkai mempunyai ID unik.
Ini adalah hasil model:
Keputusan Bingkai tunggal ByteTRACK
Seperti yang anda lihat, setiap pemain diberikan nombor unik dan dijejaki antara bingkai.
Sudah tentu, pengesanan dan penjejakan hanyalah permulaan.
Dengan ini, kita boleh pergi ke peringkat seterusnya!
Sebagai contoh, kini anda boleh menganalisis dengan pantas perjalanan sesuatu tindakan, memahami cara bola bergerak antara pemain, mengira jarak yang telah digerakkan oleh pemain atau mencari kawasan medan yang paling kerap muncul.
Sesetengah netizen berkata: Memandangkan anda mempunyai begitu banyak maklumat, ia akan menjadi kasihan untuk tidak bertaruh pada bola sepak.
Sebagai tindak balas, beberapa netizen yang teruja berkata: "Ini terlalu bermimpi! Saya selalu ingin membuat sesuatu seperti ini dan menjualnya kepada penjudi bola sepak. . Orang."
"Anda boleh menunjukkan status hantaran dan status persediaan setiap pemain yang menyerang setiap saat. Penilaian prestasi, ini lebih tepat daripada anggaran kemungkinan "
Sesetengah netizen juga berkata: Impikan peta mini masa nyata untuk bola sepak! perlawanan.
Sesetengah netizen yang serius bertanya: "Adakah skrip ini hanya terpakai pada sudut kamera tetap, seperti dari satu sisi yang meliputi seluruh tanah? Bolehkah ia digunakan dalam sudut kamera lain, seperti memfokuskan kepada 3-4 pemain? gunakan data dan latih semula model, ia sepatutnya berfungsi dengan baik."
Dan netizen berkata: "Saya rasa data latihan dari sudut lain tidak akan berfungsi. Teruskan menjalankan skrip semasa merakam pada sudut kamera penuh, tetapi perhatikan kedudukan bola dan pemain di sekelilingnya, dan tandakan data pada mana-mana suapan lain 》
Atas ialah kandungan terperinci Berjaga lewat malam ini untuk Messi dan Modric! Model CV ini membolehkan anda menang dengan meneka bola. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!