

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Klasifikasi citra DLR
<a name="dlr-image-classification-component"></a>

Komponen klasifikasi citra DLR (`aws.greengrass.DLRImageClassification`) berisi contoh kode inferensi untuk melakukan inferensi klasifikasi gambar menggunakan [Deep Learning Runtime](https://github.com/neo-ai/neo-ai-dlr) dan model resnet-50. Komponen ini menggunakan varian [Penyimpanan model klasifikasi gambar DLR](dlr-image-classification-model-store-component.md) dan komponen [Runtime DLR](dlr-component.md) sebagai dependensi untuk mengunduh DLR dan model sampel. 

Untuk menggunakan komponen inferensi ini dengan model DLR yang terlatih khusus, [buat versi kustom](ml-customization.md#override-public-model-store) dari komponen penyimpanan model dependen. Untuk menggunakan kode inferensi kustom Anda sendiri, Anda dapat menggunakan resep komponen ini sebagai templat untuk [membuat komponen inferensi kustom](ml-customization.md#create-inference-component).

**Topics**
+ [Versi](#dlr-image-classification-component-versions)
+ [Tipe](#dlr-image-classification-component-type)
+ [Sistem operasi](#dlr-image-classification-component-os-support)
+ [Persyaratan](#dlr-image-classification-component-requirements)
+ [Dependensi](#dlr-image-classification-component-dependencies)
+ [Konfigurasi](#dlr-image-classification-component-configuration)
+ [File log lokal](#dlr-image-classification-component-log-file)
+ [Changelog](#dlr-image-classification-component-changelog)

## Versi
<a name="dlr-image-classification-component-versions"></a>

Komponen ini memiliki versi berikut:
+ 2.1.x
+ 2.0.x

## Tipe
<a name="dlr-image-classification-component-type"></a>

<a name="public-component-type-generic"></a><a name="public-component-type-generic-phrase"></a>Komponen ini adalah komponen generik (`aws.greengrass.generic`). Inti [Greengrass](greengrass-nucleus-component.md) menjalankan skrip siklus hidup komponen.

<a name="public-component-type-more-information"></a>Untuk informasi selengkapnya, lihat [Jenis komponen](develop-greengrass-components.md#component-types).

## Sistem operasi
<a name="dlr-image-classification-component-os-support"></a>

Komponen ini dapat diinstal pada perangkat inti yang menjalankan sistem operasi berikut:
+ Linux
+ Windows

## Persyaratan
<a name="dlr-image-classification-component-requirements"></a>

Komponen ini memiliki persyaratan sebagai berikut:<a name="ml-component-requirements"></a>
+ Pada perangkat inti Greengrass yang menjalankan Amazon Linux 2 atau Ubuntu 18.04, [Pustaka GNU C](https://www.gnu.org/software/libc/) (glibc) versi 2.27 atau yang lebih baru diinstal pada perangkat.
+ Pada perangkat ARMv7L, seperti Raspberry Pi, dependensi untuk OpenCV-Python diinstal pada perangkat. Jalankan perintah berikut untuk menginstal dependensi.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Perangkat Raspberry Pi yang menjalankan Raspberry Pi OS Bullseye harus memenuhi persyaratan berikut:
  + NumPy 1.22.4 atau yang lebih baru diinstal pada perangkat. Raspberry Pi OS Bullseye menyertakan versi sebelumnya NumPy, sehingga Anda dapat menjalankan perintah berikut untuk meningkatkan NumPy pada perangkat.

    ```
    pip3 install --upgrade numpy
    ```
  + Tumpukan kamera lama diaktifkan di perangkat. Raspberry Pi OS Bullseye menyertakan tumpukan kamera baru yang diaktifkan secara default dan tidak kompatibel, jadi Anda harus mengaktifkan tumpukan kamera lama.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Untuk mengaktifkan tumpukan kamera lama**

    1. Jalankan perintah berikut untuk membuka alat konfigurasi Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Pilih **Opsi Antarmuka**.

    1. Pilih **Kamera lama** untuk mengaktifkan tumpukan kamera lama.

    1. Reboot Raspberry Pi.

## Dependensi
<a name="dlr-image-classification-component-dependencies"></a>

Saat Anda menerapkan komponen, gunakan AWS IoT Greengrass juga versi dependensinya yang kompatibel. Ini berarti bahwa Anda harus memenuhi persyaratan untuk komponen dan semua dependensinya untuk berhasil men-deploy komponen. Bagian ini berisi daftar dependensi untuk [versi yang dirilis](#dlr-image-classification-component-changelog) dari komponen ini dan kendala versi semantik yang menentukan versi komponen untuk setiap dependensi. Anda juga dapat melihat dependensi untuk setiap versi komponen di [konsol AWS IoT Greengrass](https://console.aws.amazon.com//greengrass) tersebut. Pada halaman detail komponen, cari daftar **Dependensi**.

------
#### [ 2.1.13 and 2.1.14 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.13 dan 2.1.14 dari komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.13.0 | Lunak | 
| [Toko model klasifikasi gambar DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Keras | 
| [DLR](dlr-component.md) | \$11.6.0 | Keras | 

------
#### [ 2.1.12 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.12 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.12.0 | Lunak | 
| [Toko model klasifikasi gambar DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Keras | 
| [DLR](dlr-component.md) | \$11.6.0 | Keras | 

------
#### [ 2.1.11 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.11 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.11.0 | Lunak | 
| [Toko model klasifikasi gambar DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Keras | 
| [DLR](dlr-component.md) | \$11.6.0 | Keras | 

------
#### [ 2.1.10 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.10 dari komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.10.0 | Lunak | 
| [Toko model klasifikasi gambar DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Keras | 
| [DLR](dlr-component.md) | \$11.6.0 | Keras | 

------
#### [ 2.1.9 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.9 dari komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.9.0 | Lunak | 
| [Toko model klasifikasi gambar DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Keras | 
| [DLR](dlr-component.md) | \$11.6.0 | Keras | 

------
#### [ 2.1.8 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.8 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.8.0 | Lunak | 
| [Toko model klasifikasi gambar DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Keras | 
| [DLR](dlr-component.md) | \$11.6.0 | Keras | 

------
#### [ 2.1.7 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.7 dari komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.7.0 | Lunak | 
| [Toko model klasifikasi gambar DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Keras | 
| [DLR](dlr-component.md) | \$11.6.0 | Keras | 

------
#### [ 2.1.6 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.6 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.6.0 | Lunak | 
| [Toko model klasifikasi gambar DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Keras | 
| [DLR](dlr-component.md) | \$11.6.0 | Keras | 

------
#### [ 2.1.4 - 2.1.5 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.4 hingga 2.1.5 dari komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.5.0 | Lunak | 
| [Toko model klasifikasi gambar DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Keras | 
| [DLR](dlr-component.md) | \$11.6.0 | Keras | 

------
#### [ 2.1.3 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.3 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.4.0 | Lunak | 
| [Toko model klasifikasi gambar DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Keras | 
| [DLR](dlr-component.md) | \$11.6.0 | Keras | 

------
#### [ 2.1.2 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.2 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.3.0 | Lunak | 
| [Toko model klasifikasi gambar DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Keras | 
| [DLR](dlr-component.md) | \$11.6.0 | Keras | 

------
#### [ 2.1.1 ]

Tabel berikut mencantumkan dependensi untuk versi 2.1.1 komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | >=2.0.0 <2.2.0 | Lunak | 
| [Toko model klasifikasi gambar DLR](dlr-image-classification-model-store-component.md) | \$12.1.0 | Keras | 
| [DLR](dlr-component.md) | \$11.6.0 | Keras | 

------
#### [ 2.0.x ]

Tabel berikut mencantumkan dependensi untuk versi 2.0.x komponen ini.


| Dependensi | Versi yang kompatibel | Jenis dependensi | 
| --- | --- | --- | 
| [Inti Greengrass](greengrass-nucleus-component.md) | \$12.0.0 | Lunak | 
| Penyimpanan model klasifikasi gambar DLR | \$12.0.0 | Keras | 
| DLR | \$11.3.0 | Lunak | 

------

## Konfigurasi
<a name="dlr-image-classification-component-configuration"></a>

Komponen ini menyediakan parameter konfigurasi berikut yang dapat Anda sesuaikan ketika Anda men-deploy komponen.

------
#### [ 2.1.x ]

`accessControl`  
<a name="ml-config-accesscontrol-desc"></a>(Opsional) Objek yang berisi [kebijakan otorisasi](interprocess-communication.md#ipc-authorization-policies) yang memungkinkan komponen untuk mempublikasikan pesan ke topik pemberitahuan default.   
Default:   

```
{
   "aws.greengrass.ipc.mqttproxy": {
      "aws.greengrass.DLRImageClassification:mqttproxy:1": {
         "policyDescription": "Allows access to publish via topic ml/dlr/image-classification.",
         "operations": [
            "aws.greengrass#PublishToIoTCore"
         ],
         "resources": [
            "ml/dlr/image-classification"
         ]
      }
   }
}
```

`PublishResultsOnTopic`  
<a name="ml-config-publishresultsontopic-desc"></a>(Opsional) Topik di mana Anda ingin mempublikasikan hasil inferensi. Jika Anda mengubah nilai ini, maka Anda juga harus mengubah nilai `resources` di parameter `accessControl` agar cocok dengan nama topik kustom Anda.  
Default: `ml/dlr/image-classification`

`Accelerator`  <a name="ml-config-accelerator"></a>
Akselerator yang ingin Anda gunakan. Nilai yang didukung adalah `cpu` dan `gpu`.  
Model sampel dalam komponen model dependen hanya mendukung akselerasi CPU. Untuk menggunakan akselerasi GPU dengan model kustom yang berbeda, [buat komponen model kustom](ml-customization.md#override-public-model-store) untuk menimpa komponen model publik.  
Default: `cpu`

`ImageDirectory`  
<a name="ml-config-imagedirectory-desc"></a>(Opsional) Jalur folder pada perangkat di mana komponen inferensi membaca gambar. Anda dapat mengubah nilai ini ke lokasi mana pun di perangkat yang dapat Anda read/write akses.  
<a name="ml-config-imagedirectory-img-default"></a>Default: `/greengrass/v2/packages/artifacts-unarchived/component-name/image_classification/sample_images/`  
Jika Anda menetapkan nilai `UseCamera` ke `true`, maka parameter konfigurasi ini diabaikan. 

`ImageName`  
<a name="ml-config-imagename-desc"></a>(Opsional) Nama gambar yang digunakan oleh komponen inferensi sebagai masukan untuk membuat prediksi. Komponen mencari gambar dalam folder yang ditentukan dalam `ImageDirectory`. Secara default, komponen menggunakan gambar sampel di direktori gambar default. AWS IoT Greengrass mendukung format gambar berikut:`jpeg`,`jpg`,`png`, dan`npy`.   
<a name="ml-config-imagename-img-default"></a>Default: `cat.jpeg`  
Jika Anda menetapkan nilai `UseCamera` ke `true`, maka parameter konfigurasi ini diabaikan. 

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
(Opsional) Waktu dalam detik antara setiap prediksi yang dibuat oleh kode inferensi. Kode inferensi sampel berjalan tanpa batas waktu dan mengulangi prediksinya pada interval waktu yang ditentukan. Misalnya, Anda dapat mengubahnya menjadi interval yang lebih pendek jika ingin menggunakan gambar yang diambil oleh kamera untuk prediksi real-time.  
Default: `3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>(Opsional) Model yang digunakan dalam komponen model publik dependen. Ubah parameter ini hanya jika Anda menimpa komponen model publik dengan komponen kustom.   
Default:  

```
{
    "armv7l": "DLR-resnet50-armv7l-cpu-ImageClassification",
    "aarch64": "DLR-resnet50-aarch64-cpu-ImageClassification",
    "x86_64": "DLR-resnet50-x86_64-cpu-ImageClassification",
    "windows": "DLR-resnet50-win-cpu-ImageClassification"
}
```

`UseCamera`  <a name="ml-config-usecamera"></a>
(Opsional) Nilai string yang menentukan apakah akan menggunakan gambar dari kamera yang terhubung ke perangkat inti Greengrass. Nilai yang didukung adalah `true` dan `false`.  
Ketika Anda menetapkan nilai ini ke `true`, kode kesimpulan sampel akan mengakses kamera pada perangkat Anda dan menjalankan kesimpulan secara lokal pada gambar yang ditangkap. Nilai `ImageName` dan parameter `ImageDirectory` diabaikan. Pastikan bahwa pengguna yang menjalankan komponen ini memiliki read/write akses ke lokasi di mana kamera menyimpan gambar yang diambil.  
Default: `false`  
Ketika Anda melihat resep komponen ini, parameter konfigurasi `UseCamera` tidak muncul dalam konfigurasi default. Namun, Anda dapat mengubah nilai parameter ini dalam [pembaruan gabungan konfigurasi](update-component-configurations.md) saat Anda men-deploy komponen.   
Ketika Anda mengatur `UseCamera` ke `true`, Anda juga harus membuat symlink untuk mengaktifkan komponen inferensi untuk mengakses kamera Anda dari lingkungan virtual yang dibuat oleh komponen waktu aktif. Untuk informasi lebih lanjut tentang penggunaan kamera dengan komponen inferensi sampel, lihat [Perbarui konfigurasi komponen](ml-tutorial-image-classification-camera.md).

------
#### [ 2.0.x ]

`MLRootPath`  <a name="ml-config-mlrootpath"></a>
<a name="ml-config-mlrootpath-desc"></a>(Opsional) Jalur folder pada perangkat inti Linux tempat komponen inferensi membaca gambar dan menulis hasil inferensi. Anda dapat mengubah nilai ini ke lokasi mana pun di perangkat yang dapat read/write diakses oleh pengguna yang menjalankan komponen ini.  
<a name="ml-config-mlrootpath-default-dlr"></a>Default: `/greengrass/v2/work/variant.DLR/greengrass_ml`  
<a name="ml-config-mlrootpath-default-tfl"></a>Default: `/greengrass/v2/work/variant.TensorFlowLite/greengrass_ml`

`Accelerator`  <a name="ml-config-accelerator"></a>
Akselerator yang ingin Anda gunakan. Nilai yang didukung adalah `cpu` dan `gpu`.  
Model sampel dalam komponen model dependen hanya mendukung akselerasi CPU. Untuk menggunakan akselerasi GPU dengan model kustom yang berbeda, [buat komponen model kustom](ml-customization.md#override-public-model-store) untuk menimpa komponen model publik.  
Default: `cpu`

`ImageName`  
<a name="ml-config-imagename-desc-dlr-1.3.0"></a>(Opsional) Nama gambar yang digunakan oleh komponen inferensi sebagai masukan untuk membuat prediksi. Komponen mencari gambar dalam folder yang ditentukan dalam `ImageDirectory`. Lokasi defaultnya adalah`MLRootPath/images`. AWS IoT Greengrass mendukung format gambar berikut:`jpeg`,`jpg`,`png`, dan`npy`.   
<a name="ml-config-imagename-img-default"></a>Default: `cat.jpeg`

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
(Opsional) Waktu dalam detik antara setiap prediksi yang dibuat oleh kode inferensi. Kode inferensi sampel berjalan tanpa batas waktu dan mengulangi prediksinya pada interval waktu yang ditentukan. Misalnya, Anda dapat mengubahnya menjadi interval yang lebih pendek jika ingin menggunakan gambar yang diambil oleh kamera untuk prediksi real-time.  
Default: `3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>(Opsional) Model yang digunakan dalam komponen model publik dependen. Ubah parameter ini hanya jika Anda menimpa komponen model publik dengan komponen kustom.   
Default:  

```
armv7l: "DLR-resnet50-armv7l-cpu-ImageClassification"
x86_64: "DLR-resnet50-x86_64-cpu-ImageClassification"
```

------

## File log lokal
<a name="dlr-image-classification-component-log-file"></a>

Komponen ini menggunakan file log berikut.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.greengrass.DLRImageClassification.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.greengrass.DLRImageClassification.log
```

------

**Untuk melihat log komponen ini**
+ Jalankan perintah berikut pada perangkat inti untuk melihat file log komponen ini secara real time. Ganti `/greengrass/v2` atau *C:\$1greengrass\$1v2* dengan jalur ke folder AWS IoT Greengrass root.

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/aws.greengrass.DLRImageClassification.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.DLRImageClassification.log -Tail 10 -Wait
  ```

------

## Changelog
<a name="dlr-image-classification-component-changelog"></a>

Tabel berikut menjelaskan perubahan dalam setiap versi komponen.


|  **Versi**  |  **Perubahan**  | 
| --- | --- | 
|  2.1.14  | Versi diperbarui untuk Greengrass nucleus 2.12.5 rilis. | 
|  2.1.13  | Versi diperbarui untuk Greengrass nucleus versi 2.12.0 rilis. | 
|  2.1.12  | Versi diperbarui untuk Greengrass nucleus versi 2.11.0 rilis. | 
|  2.1.11  | Versi diperbarui untuk Greengrass nucleus versi 2.10.0 rilis. | 
|  2.1.10  | Versi diperbarui untuk Greengrass nucleus versi 2.9.0 rilis. | 
|  2.1.9  | Versi diperbarui untuk Greengrass nucleus versi 2.8.0 rilis. | 
|  2.1.8  |  Versi diperbarui untuk Greengrass nucleus versi 2.7.0 rilis.  | 
|  2.1.7  |  Versi diperbarui untuk Greengrass nucleus versi 2.6.0 rilis.  | 
|  2.1.6  |  Versi diperbarui untuk Greengrass nucleus versi 2.5.0 rilis.  | 
|  2.1.5  |  Komponen dirilis di semua Wilayah AWS.  | 
|  2.1.4  |  Versi diperbarui untuk Greengrass nucleus versi 2.4.0 rilis. Versi ini tidak tersedia di Eropa (London) (`eu-west-2`).  | 
|  2.1.3  |  Versi yang diperbarui untuk rilis inti Greengrass versi 2.3.0.  | 
|  2.1.2  |  Versi yang diperbarui untuk rilis inti Greengrass versi 2.2.0.  | 
|  2.1.1  |  <a name="changelog-dlr-image-classification-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/greengrass/v2/developerguide/dlr-image-classification-component.html)  | 
|  2.0.4  |  Versi awal.  | 