Abstrak — Kualitas telur puyuh sebagai makanan dipengaruhi oleh perlakuan dan peristiwa yang terjadi selama proses produksi hingga  distribusi  telur  kepada  konsumen.  Selama  proses  ini,  sel telur dapat menemui berbagai peristiwa yang dapat menyebabkan  kulit  telurnya  pecah.  Proses  pemilihan  telur sebagian  besar  dilakukan  secara  manual  dengan  menyinari  telur atau dengan mengetuk kulit telur. Metode ini akan membutuhkan upaya  yang  lebih  besar  ketika  jumlah  telur  yang  akan  diperiksa cukup  banyak,  sehingga  diperlukan  metode  berbasis  komputer untuk  membantu  mengatasi  masalah  ini.  Dalam  penelitian  ini, dengan  menggunakan  algoritma Fast  Fourier  Transform (FFT), fitur-fitur dari suara ketukan diekstraksi, dan berdasarkan fitur- fitur  tersebut,  metode K-Nearest  Neighbors (K-NN)  digunakan untuk  mengklasifikasikan  suara  ketukan  ke  dalam  kelas  bagus atau  kelas  rusak.  Jumlah  data  yang  digunakan  adalah  180  telur puyuh,  di  mana  120  data  digunakan  sebagai  data  latih  dan  60 data  sisanya  digunakan  untuk  data  uji.  Berdasarkan  hasil pengujian, penggunaan
FFT dan K-NN berhasil mengklasifikasikan  kondisi  kulit  telur  puyuh  dengan  tingkat akurasi lebih dari 80%.
Kata  kunci —  FFT;  Keretakan  Cangkang;  Klasifikasi  Suara; K-Nearest Neighbors .
Abstract — The quality of quail eggs as food is influenced by the treatment  and  events  that  occur  during  the  production  process  to the distribution of eggs to consumers. During this process, the egg can  encounter  various  events  that  can  cause  the  eggshell  broken. The  process  of  egg  selection  is  mostly  done  manually  by  candling the egg or by tapping the eggshell. This method will require greater effort  when  the  number  of  eggs  to  inspect  is  quite  a  lot,  so  a computer-based  method  is  needed  to  help  overcome  this  problem. In  this  study,  by  using  the  Fast  Fourier  Transform  (FFT) algorithm  the  features  of  tapping  sound  are  extracted,  and  based on those features the K-Nearest Neighbors (K-NN)  method is used to  classify tapping sound into good or break class. The amount of data  used  is  180  quail  eggs,  where  120  data  use  as  training  data and the remaining 60 data are used for test data. Based on the test results,  the  use  of  FFT  and  K-NN  success  to  classify  the  quail eggshell conditions with an accuracy level over 80%.
Keywords  —Eggshell  Crack  ;  FFT;  K-Nearest  Neighbors; Sound Classification.

## I. P ENDAHULUAN
Telur  merupakan  salah  satu  bahan  pangan  yang  sering dikonsumsi  manusia  dalam  berbagai  bentuk  makanan  jadi. Sebagai  bahan  pangan  telur  mengandung  zat  gizi  seperti
protein, lemak, vitamin dan mineral yang dibutuhkan manusia. Kandungan  protein  yang  tinggi  dengan  susunan  asam  amino esensial  yang  lengkap  menjadi  telur  sebagai  patokan  dalam menentukan mutu protein berbagai bahan pangan. Telur puyuh merupakan salah satu jenis telur yang dikonsumsi manusia.
Dalam  proses  produksi  telur  untuk  konsumsi  kebanyakan masih dilakukan secara manual dan dalam proses tersebut telur yang  baru  diproduksi  dapat  mengalami  beberapa  hal  yang dapat  menyebabkan  telur  tersebut  mengalami  keretakan  pada kulit  telur.  Cangkang  yang  utuh  merupakan  kriteria  kualitas yang  pertama  dan  penting  bagi  industri  dan  konsumen  telur [1].  Keretakan  pada  kulit  telur  akan  mempengaruhi  kualitas dari  telur  yang  diproduksi.  Kulit  telur  yang  retak  dapat mempermudah isi telur untuk terkontaminasi mikroba patogen sehingga  dapat  menyebabkan  masalah  bagi  kualitas  dan keamanan telur untuk konsumsi [2], selain itu telur yang retak akan  mempengaruhi  tingkat  daya  tetas  yang  menyebabkan kerugian  ekonomi  [3].  Kondisi  fisik  telur  puyuh  yang berukuran  kecil  dan  memiliki  cangkang  tipis  dapat mempertinggi kemungkinan untuk mengalami keretakan dalam proses produksi. Pola yang muncul pada cangkang juga dapat menyebabkan keretakan yang muncul tidak dapat dilihat secara visual.
Proses  seleksi  telur  untuk  konsumsi  manusia  masih dilakukan secara manual dengan menggunakan cara penyinaran atau mengetuk cangkang telur. Metode penyinaran adalah  yang  paling  banyak  dilakukan  dimana  dengan  cara  ini dapat mendeteksi adanya retakan, kotoran, ataupun munculnya titik  darah  (embrio),  akan  tetapi  cara  ini  kurang  begitu  baik dalam  mendeteksinya  adanya  retakan  terutama  retakan  yang halus ( hairline s). Mengetuk cangkang telur mampu mendeteksi adanya  retakan  berdasarkan  perbedaan  suara  atau  bunyi  yang ditimbulkan. Proses pemeriksaan dan pemilihan telur sebelum pengemasan  dengan  cara  manual  merupakan  proses  yang membutuhkan  usaha  yang  cukup  besar  dan  waktu  yang panjang,  oleh  karena  itu  diperlukan  sebuah  teknologi  yang dapat membantu proses ini secara otomatis sehingga proses ini dapat menjadi lebih efisien dan kualitas telur yang dijual dapat lebih terjamin.
Penggunaan suara untuk memeriksa kualitas atau mengklasifikasikan  bahan  pangan  telah  dilakukan  dalam beberapa  penelitian  diantaranya  dalam  pengklasifikasian

## Penerapan Algoritma Fast Fourier Transform dan K-nearest neighbor pada Pengklasifikasian Kualitas Telur Puyuh
Agustinus Jacobus, Dirko Gustaafiano Setyadharmaputra Ruindungan, Jane  I. Litouw Teknik Elektro Universitas Sam Ratulangi Manado, Jl. Kampus Bahu-Unsrat Manado, 95115 a.jacobus@unsrat.ac.id , dirko@unsrat.ac.id , jane_litouw@unsrat.ac.id
varietas kacang pistachio[4] dan kacang almond[5], pendeteksian keretakan cangkang telur ayam [6], [7]. Berdasar dari  hasil-hasil  penelitian  tersebut  dapat  dilihat  bahwa penggunaan teknik analisis sinyal suara memberikan hasil yang cukup akurat dalam mendeteksi kualitas ataupun mengelompokkan varietas bahan pangan.
Saat ini suara atau bunyi dapat direkam dan disimpan secara digital  dalam  sebuah  berkas  komputer.  Berkas-berkas  yang tersimpan  dalam  komputer  ini  dapat  diolah  dengan menggunakan  berbagai  teknik  pengolahan  suara  atau  audio digital  untuk  berbagai  tujuan,  misalnya  pengklasifikasian, pengukuran  kemiripan,  pengelompokan  dan  lain-lain.  Hal  ini menjadi  sebuah  peluang  untuk  memanfaatkan  komputer  dan teknik-teknik  pengolahan  suara  untuk  mengolah  suara  atau bunyi  yang  ditimbulkan  dari  ketukan  pada  cangkang  telur untuk  mengklasifikasikan  kualitas  telur  yang  diproduksi  dari peternakan.  Pemanfaatan  komputer  untuk  membantu  dalam pengklasifikasian  telur  diharapkan  dapat  dibuat sebuah sistem yang secara otomatis mampu mengklasifikasikan kualitas telur sehingga  proses  produksi  telur  dari  peternakan  dapat  lebih efisien dan hasil produksinya lebih berkualitas. Tujuan  dari  penelitian  ini  adalah  mengimplementasikan teknik  pengolahan  data  suara  dan machine  learning untuk mendeteksi adanya keretakan pada cangkang telur puyuh yang menjadi objek dalam penelitian ini.

## A. Pengolahan suara
Bunyi  atau  suara  dihasilkan  dari  getaran  yang  diteruskan oleh  medium  udara,  ditangkap  oleh  telinga  manusia  normal. Hidayatno  [8]  menjelaskan  bahwa  pendengaran  manusia terbatas  pada  daerah  frekuensi  16  Hz  sampai  20  kHz.  Suara yang  terdengar  akan  terasa  keras  apabila  amplitudo  sinyal suara  yang  sampai  ke  telinga  cukup  besar.  Sebaliknya,  suara yang  terdengar  akan  terasa  pelan  atau  lembut  apabila amplitudo  sinyal  suara  cukup  kecil.  Gelombang  audio merupakan  gelombang  longitudinal  yang  merambat  melalui medium  seperti  medium  padat,  cair,  atau  gas.  Gelombang suara  merupakan  gelombang  analog  yang  apabila  diolah menggunakan  peralatan  elektronik,  gelombang  tersebut  harus melalui tahap digitalisasi sehingga gelombang tersebut berupa data digital [9].
Gambar 1.  Representasi Gelombang Audio dalam domain waktu
Proses  digitalisasi  gelombang  analog  kebentuk  digital disebut  dengan analog  to  digital  converter (ADC).  Ada  tiga tahapan dalam proses ADC yaitu: sampling, quantization , dan coding [10]. Sampling merupakan  konversi  nilai  waktu  yang kontinu  kedalam  bentuk  diskrit. Quantization merupakan proses  mengubah  nilai  sampel  yang  kontinu  ke  bentuk  diskrit dan  coding  merupakan  proses  untuk  merepresentasikan  nilai yang telah terkuantisasi secara digital.
Gelombang  audio  dapat  direpresetansikan  dalam  domain waktu  (waktu-amplitudo)  maupun  domain  frekuensi  (waktu- frekuensi)[10].  Gambar  1  memperlihatkan  bentuk  gelombang audio  dengan  durasi  1  detik  dan  amplitudo  5.  Gambar  2 memperlihatkan  bentuk  gelombang  audio  dalam  domain frekuensi.
Menurut  Hidayatno  [8],  menganalisis  suatu  suara  dapat diartikan  menganalisis  suara  dalam  komponen  frekuensi  dan waktu  dari  suara  tersebut.  Di  mana  frekuensi  menentukan tinggi  rendahnya  suara,  sedangkan  komponen  waktu menentukan  kapan  suatu  suara  dibunyikan.  Karena  dengan mengetahui  komponen-komponen  tersebut  sinyal  suara  dapat dianalisis dengan rinci.

## B. Fast Fourier Transform
Representasi sinyal audio dalam domain waktu belum dapat menunjukan  komponen  frekuensi  dan  pendistribusian  sinyal audio[10],  untuk  itu  sinyal  suara  yang  direkam  dan direpresentasikan  dalam  domain  waktu  perlu  diubah  kedalam bentuk domain frekuensi. Pengubahan representasi sinyal suara dari domain waktu ke domain frekuensi dapat didasarkan pada transformasi Fourier. Representasi  sinyal  audio  kedalam domain frekuensi disebut dengan spectrum sinyal, dimana dari representasi ini dapat diamati perubahan amplitudo suara pada tiap  frekuensi. Discrete  Fourier  Transform  ( DFT)  merupakan cara yang umum digunakan untuk mengubah bentuk sinyal dari domain  waktu  ke  domain  frekuensi.  Namun  DFT  memiliki kelemahan  dari  segi  efisiensi  waktu  untuk  menghitung  isi frekuensi,  untuk  itu  digunakan  algoritma Fast  Fourier Transform (FFT)  yang  lebih  efisien  dalam  mengubah  sinyal dari representasi domain waktu ke domain frekuensi.
Gambar 2.  Representasi Gelombang Audio dalam domain frekuensi

## C. Pengklasifikasian data berbasis Instance
Klasifikasi  merupakan  sebuah  bentuk  analisis  data  yang bertujuan  untuk  mendapatkan  sebuah  model  yang  dapat digunakan  untuk  mengelompokkan  atau  mengklasifikasikan data  yang  belum  memiliki  kelas  berdasar  data-data  historis yang telah memiliki kelas.
Pengklasifikasian  data  berbasis instance merupakan  teknik pengklasifikasian  yang  berprinsip  bahwa instance yang  mirip akan  memiliki  kelas  yang  mirip[11]  .  Teknik  ini  juga  disebut dengan lazy learners . Berbeda dengan teknik pengklasifikasian yang  disebut eager  learners dimana  dalam  zteknik  ini  proses klasifikasi  terdiri  atas  dua  tahap  tahapan  pembelajaran  dan tahapan  prediksi  [12].  Dalam  tahapan  pembelajaran  data historis  atau  data training yang  telah  terklasifikasi  digunakan dalam  proses  pembelajaran  untuk  mendapatkan  pola  atau model.  Pola  atau  model  yang  dihasilkan  pada  tahapan pembelajaran digunakan pada tahap prediksi untuk mengklasifikasikan data baru yang belum memiliki kelas. Pada  pengklasifikasian  berbasis instance ,  himpunan  data training digunakan  untuk  menentukan  kelas  dari  sebuah  data baru  yang  belum  terklasifikasi  berdasar  kedekatan  atau kemiripan antara beberapa data dalam himpunan data training dengan data baru[13].
K-nearest  neighbor merupakan  salah  satu  metode pengklasifikasian data berbasis instance. Data direpresentasikan  sebagai  titik-titik  data  atau vector dalam sebuah  ruang  vektor  dimana  setiap  dimensi  dari  ruang  vektor merupakan  atribut  dari  data. Kelas dari data baru yang belum diklasifikasikan  ditentukan  berdasar  kelas  mayoritas  data training yang  ada  didekat  dari  data  baru  tersebut.  Nilai  k menyatakan  jumlah  data training yang  terdekat  dan  teknik- teknik pengukuran jarak antara titik dalam ruang vektor seperti euclidean distance dan mahalonobis digunakan untuk mencari titik-titik  terdekat  dengan  data  yang  baru.  Gambar  3 mengilustrasikan  bagaimana k-nearest  neighbor menentukan kelas dari sebuah data yang belum terklasifikasikan.
Gambar 3.  Ilustrasi k-nearest neighbor dengan nilai k=5
Pada  Gambar  3  dapat  dilihat  bahwa  setiap  data  memiliki dua  atribut  yaitu  atribut  A1  dan  A2  dengan  nilai  k=5.  Data yang  baru  diklasifikasikan  kedalam  kelas  positif  (+) didasarkan pada 5 titik data yang terdekat dan mayoritas kelas dari  titik-titik  data  tersebut  ada  positif  (3  kelas  positif  dan  2 kelas negatif)

## D. Kualitas Telur
Telur  merupakan  produk  peternakan  yang  memberikan sumbangan besar bagi tercapainya kecukupan gizi masyarakat. Sebutir  telur  mengandung  zat  gizi  yang  lengkap  dan  mudah dicerna.  Tugiyanti  dan  Iriyanti  [14],  mengemukakan  bahwa kualitas  telur  adalah  suatu  istilah  yang  digunakan  dalam penentuan  kualitas  internal  dan  kualitas  eksternal  telur. Kualitas internal atau bagian dalam, yaitu kekentalan putih dan kuning  telur,  ukuran  sel  udara,  bentuk  kuning  telur,  dan kekuatan  kuning  telur.  Sedangkan  kualitas  eksternal  atau bagian  luar  mengacu  pada  kebersihan  kulit,  tekstur,  warna kulit, serta keutuhan.
Telur memiliki sifat mudah rusak, baik itu kerusakan alami, kimiawi maupun disebabkan oleh mikroorganisme yang masuk melalui  pori-pori  kulit.  Salah  satu  sifat  telur  adalah  mudah pecah,  retak,  dan  tidak  dapat  menahan  tekanan  yang  besar, sehingga  telur  tidak  dapat  diperlakukan  kasar  dalam  suatu wadah.  Kerusakan  telur meliputi kerusakan yang nampak dari luar  dan  kerusakan  yang  baru  dapat  diketahui  setelah  telur pecah. Kerusakan pertama berupa kerusakan alami yaitu pecah atau  retak.  Kerusakan  lain  adalah  akibat  udara  dalam  isi telur keluar  sehingga  derajat  keasaman  naik.  Sebab  lain  adalah karena keluarnya uap air dari dalam telur yang membuat berat telur  turun  serta  putih  telur  encer  sehingga  kesegaran  telur merosot.  Kerusakan  telur  dapat  pula  disebabkan  oleh masuknya  mikroba  ke  dalam  telur,  yang  terjadi  ketika  telur masih berada dalam tubuh induknya. Kerusakan telur terutama disebabkan oleh kotoran yang menempel pada kulit telur.
Gambar 4.  Peralatan Eksperimen + + + + + + + + + + - - - - - - - - - - + + - A1 A2 Mikrofon Pemutar telur Motor Servo Pengetuk Telur puyuh

## II. M ETODE P ENELITIAN
Tahapan  penelitian  yang  dilalui  dimulai  dari  desain  dan pembuatan  alat  perekam  bunyi  ketukan,  pengumpulan  data suara, pengolahan data suara, pengujian dan evaluasi. Tahapan tersebut diuraikan lebih rinci sebagai berikut:

## A. Desain dan pembuatan alat perekam bunyi ketukan
Untuk mendapatkan hasil rekaman yang baik dan konsisten diperlukan sebuah alat sederhana yang dapat membantu dalam proses  pengumpulan  data  rekaman  suara  ketukan  telur,  untuk itu  pada  tahapan  ini  akan  dirancang  dan  dibuat  sebuah  alat yang  dapat  memberikan  ketukan  pada  telur  secara  konsisten dari segi tenaga ketukan dan waktu perekaman.
Bunyi  yang  digunakan  dalam  penelitian  ini  adalah  bunyi yang dihasilkan dari ketukan pada cangkang telur. Adapun alat untuk  menghasilkan  dan  merekam  bunyi  dari  ketukan  pada cangkang telur yang dibuat mengikuti konsep desain dari Lin, dkk [15], dengan beberapa penyesuaian dari segi material dan alat yang digunakan. Alat yang digunakan untuk mengumpulkan  data  dalam  penelitian  ini  diperlihatkan  pada gambar  4.  Mikrofon  digunakan  untuk  menangkap  suara  yang dihasilkan  dari  pengetukan  cangkang  telur  dengan  alat pengetuk berbahan plastik padat.
Alat  pengetuk  digerakan  menggunakan  motor  servo.  Agar pengetukan  dapat  dilakukan  pada  beberapa  area  maka  telur perlu  diputar  dengan  alat  pemutar  berbahan  karet  lunak  yang digerakan dengan motor DC 6V.

## B. Pengumpulan dan pengolahan data suara
Setelah  alat  berhasil  dibuat  maka  tahap  berikutnya  adalah mengumpulkan  data  suara  dengan  mempergunakan  alat  yang telah  dibuat.  Data  suara  yang  diambil  untuk  penelitian  ini adalah  data  suara  dari  hasil  ketukan  pada  cangkang  telur
puyuh.  Dimana  sampel  telur  puyuh  diperoleh  adalah  sampel yang telah melalui proses pemilihan dari peternakan. Data  suara  yang  terkumpul  selanjutnya  akan  diolah  untuk mendapatkan  model  yang  nantinya  digunakan  untuk mengklasifikasikan  data  suara  baru.  Proses  pengolahan  dan pengklasifikasian  data  suara  yang  dimaksud  ditunjukkan  pada Gambar 5.
Data training adalah  data  suara  yang  telah  diklasifikasikan terlebih dahulu, dimana dalam penelitian ini digunakan 2 kelas suara  yaitu,  rusak  untuk  telur  dengan kondisi cangkang pecah atau  rusak  dan  bagus  untuk  telur  dengan  kondisi  cangkang bagus.
Data  suara  yang  terkumpul  dari  proses  pengumpulan  data adalah  data  suara  yang  telah  diklasifikasikan  terlebih  dahulu mengikuti  kondisi  cangkang  sampel  telur.  Data  suara  tersebut kemudian mengalami proses reduksi noise . Pada tahap reduksi noise ,  suara-suara  yang  dapat  mengganggu  hasil  analisis amplitudonya  direduksi  sehingga  suara  ketukan  dapat diperjelas. Noise atau  suara-suara  pengganggu  ini  adalah suara-suara  yang  dihasilkan  oleh  motor  servo  dan  motor  DC yang  menjadi  penggerak  pengetuk  cangkang  dan  pemutar telur.  Hasil  dari  proses  ini  adalah  berupa  data  suara  yang bersih.
Dari  data  suara  yang  bersih  kemudian  dilakukan  proses ekstraksi  fitur  suara,  dimana  dalam  tahap  ini  data  suara  yang direpresentasikan  dalam  bentuk  domain  waktu  ditransformasi kedalam  bentuk  representasi  domain  frekuensi  dengan menggunakan  algoritma Fast  Fourier  Transform (FFT).  Fitur yang  digunakan  dalam  penelitian  ini  adalah  frekuensi  suara dan magnitudo yang ditemukan oleh algoritma FFT. Setelah  fitur suara dari masing-masing data suara terbentuk maka  tahap  berikutnya  adalah  proses  pelatihan  atau training untuk  memperoleh  model  yang  digunakan  dalam  proses pengklasifikasian  ( prediction )  data  suara  baru.  Untuk  proses training dan prediction digunakan  algoritma k-nearest neighbor .
Gambar 5.  Tahapan pengklasifikasian data suara.
Data  suara  baru  yang  belum  terklasifikasikan,  sebelum diklasifikasikan  dalam  proses  prediction  akan  mengalami proses yang sama dengan data training yaitu reduksi noise dan ekstraksi fitur. Pada proses prediksi fitur suara dari data suara diklasifikasikan  berdasar  model  yang  diperoleh  dari  proses training .
Pada  tahapan  ini  juga  akan  dibuat  aplikasi  komputer  untuk membantu  dalam  proses  pembersihan data, ekstraksi fitur dan serta pengimplementasian algoritma pengklasifikasian suara.

## C. Pengujian dan Evaluasi
Tahapan  pengujian  dan  evaluasi  merupakan  tahapan  untuk menguji dan mengevaluasi model yang diperoleh dari tahapan pengolahan data suara.
Data  suara  yang  terkumpul  dari  tahapan  pengumpulan  data akan  dibagi  dalam  dua  bagian  yaitu  data  latih  dan  data  uji. Penentuan  data  latih  dan  data  uji  dilakukan secara acak. Data latih  digunakan  dalam  proses training untuk  memperoleh model  dan  data  uji  digunakan  untuk  menguji  model.  Hasil pengklasifikasian  data  uji  selanjutnya  disajikan  dalam  bentuk confusion matriks.
Berdasar confusion matriks yang diukur tingkat akurasi dari model dengan menggunakan (1).
(1)
True Positive adalah jumlah data yang terklasifikasi benar rusak  dan true  negative adalah  jumlah  data  yang terklasifikasi benar bagus.
Selain  tingkat  akurasi  diukur  juga  tingkat  kesalahan klasifikasi  berupa  nilai recall dan  presisi  dengan menggunakan (2) dan (3)
(2)
(3)
Gambar 6. Sampel telur puyuh dengan kondisi cangkang bagus.
Recall merupakan  ukuran  untuk  mengukur  tingkat ketepatan  model  dalam  mengklasifikasikan  dibandingkan dengan  jumlah  data  yang  benar.  Nilai false  negative pada (2)  merupakan  jumlah  telur  yang  diprediksi  rusak  tapi aktualnya bagus atau tidak rusak dan sebaliknya.
Presisi  merupakan  ukuran  untuk  mengukur  tingkat ketepatan  model  mengklasifikasikan  data  dibandingkan dengan jumlah data yang diprediksi atau diklasifikasi benar. Nilai false positive menyatakan jumlah telur yang aktualnya rusak tapi hasil klasifikasinya bagus dan sebaliknya.

## III. H ASIL DAN P EMBAHASAN

## A. Eksperimen
Jumlah  data  sampel  telur  puyuh  yang  diperoleh  adalah sebanyak  180  telur  puyuh  dengan  pembagian  90  telur  puyuh dengan  kondisi  cangkang  bagus  dan  90  telur  puyuh  dengan kondisi  cangkang  pecah  atau  retak.  Contoh  dari  sampel  data telur puyuh cangkang yang bagus dapat dilihat pada Gambar 6 dan  untuk  kondisi  cangkang  pecah  atau  retak  diperlihatkan pada Gambar 7.
Berdasarkan sampel telur puyuh yang ada, dilakukan proses pengumpulan  data  suara  menggunakan  alat  penangkap  bunyi yang telah dibangun seperti pada Gambar 5 Data sampel yang digunakan berupa suara ketukan pada cangkang telur sebanyak 180  buah  data  yang  dibagi  menjadi  120  data  sebagai  data training dan 60 data sebagai data test.
Gambar 7. Sampel telur puyuh dengan kondisi cangkang pecah atau retak.
Gambar 8. Area pengetukan pada cangkang telur puyuh .
Untuk  area  telur  yang  mendapatkan  ketukan  adalah  area telur  bagian  tengah  yang  diperlihatkan  pada  Gambar  8. Ketukan dilakukan setiap 0.5 detik dan suara ketukan direkam dengan durasi 5 detik untuk setiap telur.

## B. Proses Pengolahan data suara
Sinyal  suara  yang  diperoleh  dari  proses  pengumpulan  data merupakan  suara  ketukan  pada  cangkang  telur  dan  juga noise yaitu  suara  lain  selain  suara  ketukan  pada  cangkang  telur berupa  suara  dari  motor  servo  dan  motor  DC.  Gambar  9 memperlihatkan  bentuk  sinyal  suara  ketukan  hasil  rekaman yang masih memiliki noise dalam domain waktu.
Suara-suara  lain  yang  ikut  terekam  dapat  mempengaruhi hasil analisis oleh karena itu perlu dihilangkan. Reduksi noise dapat  membantu  untuk  menghilangkan  suara-suara  lain tersebut..Reduksi noise dilakukan  dengan  menggunakan library bahasa pemograman python yaitu noisereduce , dimana library ini  melakukan  reduksi noise dengan  menggunakan metode spectral  gating .  Gambar  10  memperlihatkan  bentuk sinyal yang dihasilkan dari proses reduksi noise .
Reduksi noise tidak  menghilangkan  keseluruhan  suara motor servo dan motor DC yang ikut terekam, tetapi proses ini dapat  mereduksi  suara-suara  tersebut  hingga  suara  ketukan dapat menjadi lebih jelas.

## C. Ekstraksi Fitur
Setelah sinyal suara telah bersih adalah ekstraksi fitur. Fitur- fitur  suara  didapatkan  dengan  merubah  bentuk  sinyal  dari domain  waktu  ke  dalam  bentuk  domain  frekuensi  dengan menggunakan  algoritma Fast  Fourier  Transform (FFT). Penerapan  algoritma  FFT  dilakukan  menggunakan  fungsi- fungsi fftpack yang  terdapat  pada library python scipy . Gambar  11  memperlihatkan  sinyal  suara  yang  telah  direduksi yang  direpresentasikan  dalam  domain  frekuensi.  Setiap frekuensi  yang  ditemukan  akan  menjadi  fitur  dan  kemudian fitur-fitur  ini  digunakan  untuk  membentuk  model  dan mengklasifikasikan  data  baru.  Frekuensi-frekuensi  yang menjadi fitur dalam penelitian ini adalah frekuensi yang berada dalam  rentang  pendengaran  manusia  yaitu  16  Hz  sampai  20 kHz.
Gambar 9. Sinyal suara asli.

## Training dan Prediksi
Proses training adalah  proses  untuk  memperoleh  model yang  nantinya  digunakan  dalam  proses  prediksi.  Tahap  awal untuk  membentuk  model  dengan  metode k-nearest  neighbor adalah  membentuk  data training dengan  melakukan  ekstraksi fitur  pada  data  suara  ketukan  telur  dan  memberi  label  sesuai dengan  kondisi  telur  yang  menjadi  sampel  yaitu  retak  dan bagus.  Proses  yang  sama  juga  dilakukan  untuk  sampel  suara yang menjadi data uji.
Tahap  selanjutnya  adalah  tahap  untuk  pembentukan  model, dimana dalam tahap ini dilakukan penentuan nilai k yang dapat membentuk  model  terbaik  dalam  proses  prediksi  atau klasifikasi.  Proses training dan  prediksi  atau  klasifikasi  data dalam penelitian ini menggunakan fungsi KneighborsClassifier yang ada pada library python sklearn .

## D. Pengujian dan Evaluasi
Pengujian  dilakukan  dengan  membagi  dataset  yang berjumlah  180  data  menjadi  dua  bagian  yang  terdiri  atas  120 data  sebagai  data training dan  60  data  sebagai  data  uji. Proporsi  jumlah  data  untuk  masing-masing  kelas  data  pada data training dan  data  uji  dibuat  sama.  Proses training dilakukan  dengan  menggunakan  metode K-nearest  neighbor dengan  nilai  parameter  k  =  2  sampai  dengan  k  =  12.  Hasil pengujian dari 10 model tersebut dapat dilihat pada tabel I. Berdasar  hasil  pengujian  model  yang  diperlihatkan  pada tabel  I,  dapat  dilihat  bahwa  model  yang  terbaik  adalah model dengan  nilai  parameter  k=5.  Pertimbangannya  adalah  model ini selain memiliki tingkat akurasi yang baik yaitu sebesar 90% juga memiliki nilai recall dan presisi yang terbaik untuk kedua kelas data.
Seluruh  model  yang  diujikan  dapat  mengklasifikasikan dengan  benar  seluruh  telur  yang  rusak  yang  ditandai  dengan nilai recall untuk  kelas  yang  rusak sebesar 1, akan tetapi dari nilai  presisi  dapat  dilihat  bahwa  ada  kesalahan  dalam mengklasifikasikan  telur  dengan  kondisi  cangkang  yang  baik. Hal  ini  dapat  dibuktikan  dari confusion matriks  untuk parameter k=5 yang ditampilkan pada tabel II.
TABEL II C ONFUSION MATRIX K =5 AKTUAL Rusak Bagus P R E D IK S I Rusak
30 0 Bagus 6
24 TABEL I H ASIL P ENGUJIAN M ODEL
Parameter k Akurasi (%) Recall Presisi Rusak Bagus Rusak Bagus 3 87 1.00 0.73 0.79 1.00 4 87 1.00 0.73 0.79 1.00 5 90 1.00 0.80 0.83 1.00 6 87 1.00 0.73 0.79 1.00 7 87 1.00 0.73 0.79 1.00 8 87 1.00 0.73 0.79 1.00 9 87 1.00 0.73 0.79 1.00 10 85 1.00 0.70 0.77 1.00 11 88 1.00 0.77 0.81 1.00 12 87 1.00 0.73 0.79 1.00
Gambar 11. Representasi sinyal suara dalam domain frekuensi
Dari  tabel  II  dapat  dilihat  bahwa  model  yang  digunakan dapat  mengklasifikasikan  dengan  benar  30  data  uji  dengan kelas rusak, akan tetapi untuk 30 uji dengan kelas bagus yang terklasifikasi  dengan  benar  hanya  24  data  saja.  Dengan demikian  dapat  dilihat  ada  6  data  uji  dengan  kelas  bagus diklasifikasikan sebagai kelas yang rusak.

## IV. K ESIMPULAN DAN S ARAN
Berdasarkan  hasil  yang  didapatkan,  diperoleh  kesimpulan bahwa  penggunaan  spektrum  suara  dalam  domain  frekuensi yang  dihasilkan  dari  penerapan  algoritma Fast  Fourier Transform dapat  digunakan  untuk  mengklasifikasikan  suara ketukan  pada  cangkang  telur  dengan  kondisi  rusak (retak/pecah) dan kondisi cangkang bagus dengan baik. Hal ini dibuktikan  dengan  tingkat  akurasi,  presisi  dan recall  y ang tinggi  pada  pengklasifikasian  suara  dengan  menggunakan metode k-nearest neighbor.
Penelitian lanjut mengenai pembentukan dan pemilihan fitur suara  serta  penggunaan  metode  lain  dalam  pengklasifikasian diperlukan untuk meningkatkan nilai presisi dari pengklasifikasian  sehingga  ketepatan  pengklasifikasian  untuk telur dengan kondisi cangkang bagus dapat ditingkatkan.

## V. K UTIPAN
[1] Š. Nedomová, J. Trnka, P. Dvořáková, J. Buchar, and L. Severa,
“Hen’s eggshell strength under impact loading,” J. Food Eng. ,
2009.
[2] M. Z. Attar and M. M. Fathi, “Non-Destructive Acoustic Resonance Method for Evaluating Eggshell Strength and Thickness,” Int. J.
Biophys. , 2014.
[3] D. M. Barnett, B. L. Kumpula, R. L. Petryk, N. A. Robinson, R. A. Renema, and F. E. Robinson, “Hatchability and early chick growth potential of broiler breeder eggs with hairline cracks,” J. Appl.
Poult. Res. , 2004.
[4] A. Jalali and A. Mahmoudi, “Pistachio nut varieties sorting by data mining and fuzzy logic classifier,” Int. J. Agric. Crop Sci. , vol. 5, no. 2010, pp. 101–108, 2013.
[5] E. Ebrahimi and K. Mollazade, “Integrating fuzzy data mining and impulse acoustic techniques for almond nuts sorting,” Aust. J. Crop Sci. , vol. 4, no. 5, pp. 353–358, 2010.
[6] H. Lin, J. W. Zhao, Q. S. Chen, J. R. Cai, and P. Zhou, “Eggshell crack detection based on acoustic impulse response and supervised pattern recognition,” Czech J. Food Sci. , vol. 27, no. 6, pp. 393– 402, 2009.
[7] M. Lashgari and R. Mohammadigol, “Comparative study of acoustic signals of rolling eggs on inclined plate and impulse response in eggshell crack detection,” Agric. Eng. Int. CIGR J. , vol.
20, no. 1, pp. 150–156, 2018.
[8] A. Hidayatno, Teknik Pengolahan Suara Digital . UPT-PUSTAK- UNDIP, 2009.
[9] M. R. Fansuri and S. H. Wijaya, Klasifikasi Genre Musik Menggunakan Learning Vector Quantization (LVQ) . Bogor: Departemen Ilmu Komputer Fakultas Matematika dan Ilmu
Pengetahuan Alam Institut Pertanian Bogor, 2011.
[10] G. Lu, “Multimedia Database Management Systems.” Artech House, Inc, 1999.
[11] C. C. Aggarwal, Data Mining: The Textbook . Springer, 2015.
[12] J. Han, M. Kamber, and J. Pei, Data Mining: Concepts and
Techniques . 2012.
[13] I. H. Witten, E. Frank, and M. A. Hall, Data Mining Practical Machine Learning Tools and Techniques , Third edit. Morgan Kaufmann, 2011.
[14] E. Tugiyanti and N. Iriyanti, “Kualitas Eksternal Telur Ayam Petelur yang Mendapat Ransum dengan Penambahan Tepung Ikan Fermentasi Menggunakan Isolat Produser Antihistamin,” J. Apl. Teknol. Pangan , vol. 1, no. 2, pp. 44–47, 2012.
[15] H. Lin, J.-W. Zhao, Q.-S. Chen, J.-R. Cai, and P. Zhou, “Eggshell Crack Detection Based on Acoustic Impulse Response and Supervised Pattern Recognition,” Czech J. Food Sci. , vol. 27, no. 6, p. 393, 2009.
Agustinus Jacobus , menyelesaikan pendidikan dan memperoleh gelar Sarjana Teknik di Jurusan Teknik Elektro Fakultas Teknik Universitas Sam Ratulangi
Manado pada tahun 2005 dan melanjutkan studi  magister  di  program  studi  Ilmu Komputer  Fakultas  Matematika  dan  Ilmu Pengetahuan  Alam  Universitas  Gadjah Mada  Yogyakarta  pada  tahun  2010  sampai  dengan  2013 dengan  gelar  Master  of  Computer  Science.  Saat  ini  menjadi pengajar  tetap  di  Program  Studi  Teknik  Informatika  Jurusan Elektro  Fakultas  Teknik  Universitas  Sam  Ratulangi  Manado dengan  bidang  minat  penelitian  pada  topik-topik  teknologi basis data, Big Data , data mining, machine learning dan deep learning.
Dirko  Gustaafiano  Setyadharmaputra Ruindungan ,  menyelesaikan  pendidikan dan  memperoleh  gelar  Sarjana  Teknik  di Jurusan  Teknik  Elektro  Fakultas  Teknik Universitas  Sam  Ratulangi  Manado  pada tahun  2012  dan  melanjutkan  studi magister di program studi Teknik Elektro dan Teknologi Informasi Fakultas Teknik Universitas  Gadjah  Mada  Yogyakarta pada tahun 2013 sampai dengan 2015 dengan gelar Master of Engineering. Saat ini menjadi pengajar tetap di Program Studi Teknik  Informatika  Jurusan  Elektro  Fakultas  Teknik Universitas  Sam  Ratulangi  Manado  dengan  bidang  minat penelitian  pada  topik-topik  teknologi  basis  data, knowledge engineering , ontology dan semantic technologies .
Jane  Litouw ,  menyelesaikan  pendidikan strata  1  di  Teknik Elektro Fakultas Teknik Universitas  Sam  Ratulangi  Manado  tahun 2003.  Pada  tahun  2011  melanjutkan  studi magister di STEI ITB Bandung dan selesai tahun  2014.  Saat  ini  menjadi  pengajar  di Program  Studi  Teknik  Elektro  Jurusan Teknik  Elektro  Universitas  Sam  Ratulangi dengan  bidang  minat  penelitian  pada  topik  teknik  kendali, sistem cerdas, dan pengolahan citra digital.