Dersteki alıştırmaları gerekli bileşenlerin yüklü olduğu bir devcontainer içinde VS Code Notebook formatında takip edebilmek üzere hazırlandı. Alıştırmalar ./notebooks klasörü içinde haftalara göre tasnif edilmiş defterlerde.
Codespaces Üzerinde
Herhangi bir bilgisayarda (yüksek donanıma gerek yok, modern bir tarayıcı çalıştırabilmesi yeterli) tarayıcı üzerinde çalışmak için ideal.
- Github hesabınızla oturum açın (an itibariyle ücretsiz hesap için aylık 120 saat/core veriyor: 2 core 60 saat, 4 core 30 saat boyunca kullanılabilir; eğitim hesabı için daha iyi koşullar mevcut).
- Aşağıdaki gibi
Code>Codespaces
seçeneklerindenNew with options...
komutu ile devam edip
uygun yapılandırmayı (en önemlisi makine tipi) seçip
yeni bir ortam oluşturun: - Bekleyin! İlk seferi biraz uzun sürecek.
- Bir
notebook
açtıktan sonra eğer seçili değilsevenv
isimlikernel
'i seçin. - VS Code sadece bir editör,
Jupyter Notebook
özelliklerini kendi içinde sunuyor dolayısıyla aynı mantık geçerli. - İşi bittiğinde Codespaces adresinden (hakkın boşa gitmemesi için) ilgili makineyi kapatın (ya da tekrar kullanılmayacaksa silin).
- Tekrar kullanmak gerektiğinde aynı adresten VS Code ya da Jupyter (ile tarayıcıdan ya da diğer seçeneklerle UZAKTAKİ ortama yerel bilgisayardan) bağlanabilirsin:
Docker Desktop, VS Code ve Remote Extension kurulu bir bilgisayarda bu repo'yu clone
'layıp ilgili klasör için Open Folder In Container...
komutunu çalıştırın.
Bu seçenek yerel kaynakları kullanabiliyor olması nedeniyle cihazın durumuna göre daha performanslı olabilir fakat bahsi geçen araçları kullanmayı gerektirdiği için tecrübe (sahibi olmayı ya da edinmek üzere zaman harcamayı) gerektiriyor.
cv2.imshow
, tarayıcıdan (ya da container
'dan) erişmesi zor olan window
ile çalıştığı için kullanmak mümkün olsa da pek tutarlı davranmıyor. Dolayısıyla basit bir cv2_imshow
fonksiyonu ile benzer bir işlevselliği elde ediyoruz: burada orijinal içerikteki cv2.imshow
yerine cv2_imshow
kullanılıyor (ve window
yapısını destekleyen diğer komutlar kullanılmıyor). Esas fonksiyonun tüm yetenekleri yok, basitçe matplotlib.pyplot.imshow
fonksiyonunu (varsa renk dönüşümü yaparak) çağırıyor.
Codespaces ile ya da yerel olarak çalışırken yapılan değişiklikler bu repo'ya gelmeyecek. Kaybetmek istemediğiniz bir şeyler mutlaka olacaktır; bunun için önce bir fork
alıp oradan devam etmek mantıklı olabilir.
Bahsi geçen teknoloji / araçların belgeleri dışında jupyter-devbox repo'sundaki Dockerfile
bu ortamda opencv
çalıştırabilmek için ciddi anlamda faydalı oldu.
Buradaki bilgilerin doğruluğu ya da yeterliliği konusunda bir iddiam olmadığı gibi bunu tamamlamak ya da buradaki içerik hakkında destek vermek üzere de bir taahhütte bulunmuyorum. Lisans dosyasında detayı mevcut: bu içerik olduğu gibi ve bir sorumluluk/garanti olmadan sunuluyor.