Cvičení – nasazení aplikace pro klasifikaci obrázků v reálném čase do Azure Sphere

Dokončeno

V tomto cvičení nasadíte aplikaci fungující v reálném čase do Azure Sphere. Otestujete vstupní obrázek a zobrazíte výstupní výsledek v emulátoru terminálu.

Ujistěte se, že:

  • Vaše zařízení Azure Sphere je připojené k vašemu počítači přes USB.
  • Vaše zařízení Azure Sphere je připojené k internetu.
  • Máte nastavené vývojové prostředí.

V tomto modulu nepoužíváte kameru k zaznamenávání obrázků. Vstupní obrázek vygenerujete převedením obrázků na hodnoty pixelů pomocí skriptu v jazyce Python.

Generování dat obrázku

V tomto cvičení otestujete vstupní obrázek vysoké zvěře.

The illustration shows the input image.

Hodnoty pixelů obrázku jsou převedeny pomocí skriptu v jazyce Python definovaného ve složce se skripty v naklonovaném úložišti.

The illustration shows the Python script of converting the image to pixel values.

  1. Otevřete soubor deer.jpg.h a zkopírujte hodnoty pixelů.

    The illustration shows pixel values converted from the image.

  2. Přidejte data zkušebního obrázku v include\arm_nnexamples_cifar10_inputs.h k otestování. Data obrázku jsou definována v arm_nnexamples_cifar10_inputs.h.

    The illustration shows image data in Visual Studio Code.

  3. Ve výchozím nastavení jsou hodnoty k otestování přidány do arm_nnexamples_cifar10_inputs.h. Můžete komentovat a testovat různé obrázky.

Nasazení aplikace fungující v reálném čase

Rekapitulace dat popisků v CIFAR10:

  • letadla: 0
  • automobil: 1
  • pták: 2
  • kočka: 3
  • jelen: 4
  • pes: 5
  • žabí: 6
  • kůň: 7
  • loď: 8
  • nákladní vůz: 9
  1. Když stisknete klávesu F5, můžete projekt ladit. Pokud projekt nebyl ještě sestaven nebo pokud se změnily nějaké soubory a sestavení je nutné provést znovu, editor Visual Studio Code projekt před spuštěním ladění sestaví.

  2. V okně výstupu Azure Sphere by se měla zobrazit zpráva, že probíhá nasazování, a cesty k sadě SDK a kompilátoru.

  3. Připojený emulátor terminálu by měl zobrazit následující výstup z programu ImageClassification_RTApp_MT3620_Baremetal. Zobrazí se vám výstup modelu CIFAR10.

    start execution
    input pre-processing
    conv1 img_buffer2 -> img_buffer1
    pool1 img_buffer1 -> img_buffer2
    conv2 img_buffer2 -> img_buffer1
    pool2 img_buffer1 -> img_buffer2
    conv3 img_buffer2 -> img_buffer1
    pool3 img_buffer-> img_buffer2
    0: 0
    1: 0
    2: 0
    3: 0
    4: 127
    5: 0
    6: 0
    7: 0
    8: 0
    9: 0
    Complete.
    

    Vstupem je barevný obrázek 32×32 pixelů, který model následně klasifikoval do jedné z 10 výstupních tříd.

    Protože tato hodnota je výstupem vrstvy softmaxu, označuje každé číslo pravděpodobnost jedné z 10 tříd obrázků. V následujícím případě popisek 4 odpovídá popisku „vysoká zvěř“ a má nejvyšší číslo. To znamená, že model nalezl ve vstupním obrázku vysokou zvěř.

  4. Nastavte zarážku někde v main.c a procházejte aplikací, abyste tak mohli prozkoumat funkce ladění nástroje Visual Studio Code pro Azure Sphere.