Forum Image Stitching

Kelas BB

Kelas BB

by IRMA AMELIA DEWI -
Number of replies: 14

Tujuan Pembelajaran: Mahasiswa memahami konsep dan tahapan proses image stitching melalui analisis kasus dan diskusi kelompok.

Skenario: Sebuah perusahaan properti ingin membuat iklan dengan menampilkan panorama gedung dan lingkungan sekitarnya 360 derajat. Mereka ingin tahu bagaimana proses pembuatan panorama tersebut dan tantangan yang mungkin dihadapi.

Kasus dan Pertanyaan Diskusi:

  1. Data input
    • Set foto overlapping area gedung dan halaman sekitar diambil dari titik tengah area tersebut dengan rotasi kamera 360 derajat.
    • Setiap foto memiliki overlap 30-40% dengan foto berikutnya.
    • Terdapat sekitar 36 foto titik pengambilan yang berurutan membentuk loop.
  2. Preprocessing
    • Filtering foto buram atau under/over exposure.
    • Koreksi warna untuk konsistensi warna antar foto.
  3. Image stitching
    • Deteksi fitur korespondensi antar foto
    • Estimasi homografi
    • Image warping
    • Image blending
    • Layer/mask editing
    • Export panorama
  4. Kendala dan tantangan
    • Perbedaan cahaya dan bayangan pada setiap foto
    • Pergerakan objek selama pengambilan foto
    • Kesalahan estimasi homografi
    • Ketidaksempurnaan hasil blending

Setiap kelompok mendiskusikan tahapan dan kendala pada skenario kasus beserta cara mengatasinya, kemudian mempresentasikan hasil diskusi.

In reply to IRMA AMELIA DEWI

Re: Kelas BB

by RAFI PUTRA DARMAWAN -
Anggota Kelompok :
Anggit Nur Ridho (152021134)
Deni Aristianto (992023071)
Muh Rivandy Setiawan (992023072)
Muhammad Ghaza Azhar Lesmana (152021166)
Rafi Putra Darmawan (152021082)

Langkah pertama adalah mengkonversi citra menjadi grayscale, lalu identifikasi fitur-fitur menggunakan detektor SIFT. Berikutnya gunakan algoritma RANSAC untuk mencocokan fitur-fitur yang sesuai antar gambar. Selanjutnya melakukan proses homografi untuk melengkungkan dan menyelaraskan semua gambar. Terakhir lakukan blending untuk menghilangkan garis parallax antar gambar.

citra hasil stitch
In reply to RAFI PUTRA DARMAWAN

Re: Kelas BB

by IRMA AMELIA DEWI -
Selamat temen-temen sudah bisa melakukan image stitching dengan sangat baik dan meminimalisir paralaks pada gambar.

- Akan bermanfaat untuk memberikan sedikit lebih banyak detail tentang bagaimana proses homografi bekerja dalam image stitching.
- Pertimbangkan untuk mengembangkan tantangan dan solusi potensial yang terkait dengan perbedaan pencahayaan dan bayangan dalam setiap foto.
- Akan membantu untuk menyertakan beberapa informasi tentang bagaimana mengatasi kesalahan potensial dalam estimasi homografi dan ketidaksempurnaan dalam hasil blending.
In reply to IRMA AMELIA DEWI

Re: Kelas BB

by ZIDAN AZRA KRAMADIBRATA -
992023075 Erlin Puspa Ningrum
992023078 Husna Fadillah Rahman
152021116 M. Hafidz Fadillah
992023080 Risydah Amatillah
152021098 Zidan Azra Kramadibrata

import cv2
import numpy as np
import matplotlib.pyplot as plt

def stitch_images(img_list):
# Create a Stitcher object
stitcher = cv2.Stitcher_create(cv2.Stitcher_PANORAMA)

# Stitch images
status, stitched_img = stitcher.stitch(img_list)

# Check if stitching is successful
if status == cv2.Stitcher_OK:
# Display the final stitched image
plt.imshow(cv2.cvtColor(stitched_img, cv2.COLOR_BGR2RGB))
plt.show()
else:
raise Exception("Image stitching failed!")

return stitched_img

# Load six images
img1 = cv2.imread("1.jpg")
img2 = cv2.imread("2.jpg")
img3 = cv2.imread("3.jpg")
img4 = cv2.imread("4.jpg")
img5 = cv2.imread("5.jpg")
img6 = cv2.imread("6.jpg")

# Create a list of images
img_list = [img1, img2, img3, img4, img5, img6]

# Stitch the images together
stitch_images(img_list)

Output

Hasil

Program menggunakan library karena hasil awal sesuai modul tidak terstitch dan orientasi terbalik. Pada program ini 2 gambar berhasil distitch, namun sisanya tidak. Hal ini terdapat pada kendala dataset, dimana gambar kekurangan area overlap dan/atau tidak dipreprocess secara baik. Untuk process stitching tersendiri adalah sebagai berikut.

1. SIFT untuk mencari titik kesamaan fitur antar foto
2. RANSAC untuk menyambungkan kesamaan antar foto dan menghilangkan titik SIFT yang tidak sama.
3. Homograph untuk mentransform gambar sehingga tampilannya "panoramic"
4. Blending untuk mengurangi/menghilangkan paralax dan memperbaiki koneksi antar gambar
In reply to ZIDAN AZRA KRAMADIBRATA

Re: Kelas BB

by IRMA AMELIA DEWI -
Selamat temen-teman sudah melakukan proses image sticthing, walaupun terdapat gambar yang tidak berhasil di-stitch.

analisis kenapa kira-kira yang mempengaruhi proses gambar tidak dapat di stitch? kemudian apa solusi agar gambar-gambar tersebut dapat di stitch?

Akan bermanfaat untuk memberikan lebih banyak detail pada setiap langkah proses penggabungan. Misalnya, kalian dapat menjelaskan bagaimana SIFT bekerja dalam langkah deteksi fitur dan bagaimana RANSAC membantu menghubungkan fitur yang serupa.
- Pertimbangkan untuk mengelaborasi teknik pra-pemrosesan khusus yang dapat digunakan untuk mengatasi tantangan yang disebutkan, seperti bagaimana menangani perbedaan pencahayaan dan pergerakan objek.
In reply to IRMA AMELIA DEWI

Re: Kelas BB

by MUHAMMAD ZIDANE ZAKI RAFISH -
Bagus Pratama (152021142)
M Zidane Zaki Rafish (152021154)
Luthfi Arief Ardiansyah (992023081)
Ridwan (992023071)
M Reza Darusallam (992023074)
 
kendala :
• perbedaan bayangan di setiap angel yang berbeda
• perbedaan objek di satu titik
• ketidaksempurnanan hasil blending dari banyak image
• perbedaan brightness yang mencolok
• foto panorama ini membentuk landskap yang melibatkan garis horizon, dan beberapa foto tidak memiliki kelurusan garis horizon yang sama (melengkung)
• beberapa resolusi foto yang berbeda
• pergerakan objek karena angin
Cara mengatasinya :
• Pastikan pengambilan gambar dilakukan pada waktu yang sama, sehingga pencahayaan seragam di seluruh pemandangan.
• Jika diperlukan atur eksposur dan white balance secara konsisten di semua gambar segera setelah pengambilan gambar jika dirasa hasil gambar tersebut kurang balance
• Pilih waktu pengambilan gambar yang minim aktivitas manusia atau objek bergerak di sekitar pemandangan.
• Gunakan fitur perspektif atau koreksi geometris pada perangkat lunak stitching
• Resize gambar ke resolusi yang seragam sebelum melakukan proses stitching.
• Ambil serangkaian gambar dengan cepat untuk mengurangi kemungkinan pergerakan objek di antara satu gambar dengan gambar berikutnya.




Pemrosesan gambar :
Program ini menggunakan beberapa trik khusus untuk menggabungkan beberapa gambar menjadi satu panorama. Pertama, gambar diolah dengan membuatnya lebih halus menggunakan teknik Gaussian Blur, dan kemudian dilakukan penyesuaian eksposur agar terlihat lebih baik dengan menggunakan histogram equalization. Untuk mengelola warna, dilakukan konversi warna ke ruang warna LAB dan diterapkan teknik Contrast Limited Adaptive Histogram Equalization (CLAHE).
Setelah proses pra-pemrosesan selesai, program menggunakan modul stitching dari OpenCV, suatu alat khusus yang menggabungkan gambar secara otomatis. Evaluasi hasil dilakukan dengan memeriksa status penggabungan, dan jika berhasil, program menampilkan gambar asli dan panorama hasil gabungan. Jadi, secara singkatnya, program ini memanfaatkan berbagai teknik untuk menciptakan panorama berkualitas dari sejumlah gambar.
Attachment WhatsApp Image 2023-11-20 at 12.32.45 PM.jpeg
In reply to MUHAMMAD ZIDANE ZAKI RAFISH

Re: Kelas BB

by IRMA AMELIA DEWI -
Teman-teman sudah sangat baik dalam mengimplementasikan dan menganalisi dari gambar proses image stitching.
Lebih baik jika pengambilan gambar dapat dilakukan lebih banyak supaya cakupan gambar dapat lebih lebar.
In reply to IRMA AMELIA DEWI

Re: Kelas BB

by MUHAMMAD NABIL ATHILLAH -
Anggota Kelompok:
Dhefika Fazhira 152021047
Muhammad Nabil 152021076
Attachment WhatsApp Image 2023-11-20 at 13.04.06_befd91c8.jpg
In reply to MUHAMMAD NABIL ATHILLAH

Re: Kelas BB

by IRMA AMELIA DEWI -
Selamat teman-teman sudha berhasil mengimplementasikan image stitching.

Lebih baik jika menggunakan beberapa gambar agar memperoleh scope area yang lebih luas
Belum ada analisis dari proses stiching yang dilakukan dan kendala serta solusi yang diusulkan untuk meminimalisir kondisi tersebut.
In reply to IRMA AMELIA DEWI

Re: Kelas BB

by ZAKY ARIF RAHMAN -

Anggota kelompok : 

- 152021042 Muhammad Fahdira K

- 152021146 Zaky Arif Rahman

- 152021195 Kaifa Nalendra P

Pertama untuk proses preprocessing yang dilakukan pada image stetching adalah grayscale, konversi setiap image terlebih dahulu kedalam format grayscale yang kemudian mengidentifikasi fitur yang relevan pada setiap image menggunakan deteksi method SIFT, dengan algoritma RANSAC kita mencocokkan fitur fitur yang relevan pada setiap gambar. Pada akhirnya dilakukan proses homography untuk menyelaraskan setiap image dan blending untuk menghilangkan garis parallax antar image.

Attachment download.png
In reply to ZAKY ARIF RAHMAN

Re: Kelas BB

by IRMA AMELIA DEWI -
Selamat teman-teman sudah berhasil mengimplementasikan image stitching.
Lebih baik jika menggunakan beberapa gambar agar memperoleh scope area yang lebih luas
Temen-temen sudah sangat baik menganalisis kendala dalam menyeleraskan beberapa image
 coba lakukan analisis bagaimana perbedaan bayangan dapat diatasi? Bagaimana variasi objek dapat diminimalkan? apa kendala yang dihadapi ketika proses sticthing?
In reply to IRMA AMELIA DEWI

Re: Kelas BB

by TIANI AYU LESTARI -

992023066 Hardianto
992023068 Dahyoung Yenuargo
992023069 Tiani Ayu Lestari

Menurut diskusi kelompok kami,  berikut penjelasannya :

A. Tahapan Proses untuk menghasilkan panorama pada 10 gambar :

1). Preprocessing:

- Filtering Foto Buram atau Under/Over Exposure: Foto buram atau yang tidak jelas perlu dihilangkan atau diperbaiki sebelum digabungkan agar hasil panorama lebih jelas.

- Koreksi Warna: Menyesuaikan warna antar foto agar konsisten dan panorama terlihat lebih mulus.

2). Image Stitching:

- Deteksi Fitur Korespondensi: Mengidentifikasi fitur-fitur kunci pada setiap foto yang saling berhubungan untuk mencocokkan bagian yang tumpang tindih.

- Estimasi Homografi: Menemukan transformasi geometris antara setiap pasangan foto yang tumpang tindih untuk mencocokkan dan menggabungkan gambar dengan benar.

- Image Warping: Mengubah posisi setiap foto sesuai dengan transformasi yang ditemukan agar cocok dengan gambar-gambar lainnya.

- Image Blending: Menyatukan area tumpang tindih secara mulus dengan teknik blending untuk mengurangi efek jahitan atau garis yang terlihat di antara gambar.

- Layer/Mask Editing: Jika diperlukan, mengedit lapisan atau masker untuk memperbaiki area yang tidak sesuai atau menghilangkan objek yang tidak diinginkan.

3). Export Panorama:

Menghasilkan tampilan panorama akhir (terlampir dibawah)

B. Ekstraksi Fitur Menggunakan SIFT:

mencocokan fitur dengan proses menjahit gambar (pada kasus kelompok kami menggunakan 2 gambar sebagai contoh, terlampir)

C. Kendala yang Dihadapi:

1) Perbedaan Cahaya dan Bayangan:

Solusi: Penggunaan teknik blending untuk menyesuaikan perbedaan cahaya dan bayangan di antara foto yang tumpang tindih.

2) Pergerakan Objek Selama Pengambilan Foto:

Solusi: Menggunakan algoritma deteksi dan penghapusan objek bergerak, atau penggunaan teknik masking/lapisan untuk menyembunyikan objek yang bergerak.

3) Kesalahan Estimasi Homografi:

Solusi: Menggunakan algoritma RANSAC (RANdom SAmple Consensus) untuk menangani kesalahan estimasi homografi dan menemukan transformasi yang lebih akurat.

4)Ketidaksempurnaan Hasil Blending:

Solusi: Pengaturan manual atau penggunaan teknik blending untuk mengurangi efek ketidaksempurnaan dalam hasil blending.

Attachment a.png
Attachment b.png
In reply to TIANI AYU LESTARI

Re: Kelas BB

by IRMA AMELIA DEWI -
Selamat teman-teman sudah dapat mengimplementasikan image stitching dengan sangat baik.
Sudah melakukan analisis dari kendala yang ditemukan.
keren..!!
In reply to IRMA AMELIA DEWI

Re: Kelas BB

by Fatharani Sativa Dewi -

Delliana Putri Salsabila - 992023076
Fatharani Sativa Dewi - 992023077
Shalihia Rahadatul Firdaus - 992023079

kami melakukan beberapa tahapan untuk menghasilkan panorama gedung dan lingkungan sekitarnya 360 derajat.

namun ada beberapa kendala dan tantangan:

* Perbedaan cahaya dan bayangan pada setiap foto
kendala : gambar dengan perbedaan cahaya yang signifikan sehingga sulit mengatasi perbedaan cahaya dan bayangan pada gambar.

tantangan : Diperlukan teknik pre-processing atau normalisasi intensitas cahaya untuk mengatasi perbedaan cahaya dan bayangan pada gambar.

* Pergerakan objek selama pengambilan foto
kendala: Pergerakan objek selama pengambilan foto dapat menyebabkan pergeseran titik korespondensi dan menghasilkan kesalahan dalam estimasi homografi.

tantangan: algoritma deteksi fitur yang stabil terhadap perubahan dan menggunakan metode pencocokan yang tahan terhadap pergerakan objek dapat membantu mengatasi kendala ini. Selain itu, teknik seperti RANSAC dapat digunakan
untuk meningkatkan robustitas terhadap titik-titik korespondensi yang salah

* Kesalahan estimasi homografi
kendala: Estimasi homografi yang tidak akurat dapat menghasilkan distorsi atau ketidaksempurnaan pada gambar panorama

tantangan: Penting untuk memilih metode estimasi homografi yang sesuai dengan kondisi gambar. Menentukan titik korespondensi dengan akurat dan menggunakan metode robust seperti RANSAC dapat membantu mengatasi kesalahan estimasi homografi.

* Ketidaksempurnaan hasil blending
kendala: Hasil blending dapat menghasilkan ketidaksempurnaan seperti garis jahitan yang terlihat atau warna yang tidak seragam di sepanjang batas gambar yang
digabungkan.

tantangan: Pengaturan parameter pada proses blending dan pemilihan metode blending yang sesuai dapat membantu mengurangi ketidaksempurnaan.

Dalam mengatasi kendala dan tantangan tersebut, penting untuk memahami karakteristik gambar yang digunakan dan memilih metode serta parameter yang sesuai untuk setiap tahap proses pembuatan panorama. Eksperimen dan penyesuaian parameter secara iteratif dapat membantu meningkatkan kualitas hasil akhir.

berikut hasil panorama dari 2 images:

In reply to Fatharani Sativa Dewi

Re: Kelas BB

by IRMA AMELIA DEWI -
selamat temen-temen sudah mengimplementasikan image stitching dengan baik.
Sebaiknya menggunakan beberapa gambar tidka hanya 2 gambar saja.

bagaimana solusi secara konkret untuk solusi yang diberikan mengenai Eksperimen dan penyesuaian parameter secara iteratif dapat membantu meningkatkan kualitas hasil akhir?