Berdasarkan hasil implementasi yang sudah dilakukan, saat ini sistem memang sudah mampu mengonversi image floor plan menjadi floor plan berbasis web. Namun masih terdapat beberapa kendala utama, terutama pada akurasi deteksi struktur bangunan.
Kondisi Saat Ini
Proses konversi floor plan image → web floor plan sudah berjalan.
Dinding (wall) sudah berhasil terdeteksi dan divisualisasikan.
Namun hasil wall masih terlihat mepet, menempel, atau tidak presisi terhadap posisi sebenarnya pada blueprint.
Akurasi bentuk ruangan dan ketebalan dinding masih belum mencapai 100%.
Beberapa sudut, junction, dan pertemuan antar dinding masih kurang rapi sehingga layout hasil konversi belum sepenuhnya sama dengan gambar sumber.
Analisis Penyebab
Dari repository yang digunakan:
sistem menggunakan pendekatan Mask R-CNN untuk mendeteksi objek floor plan seperti wall, door, dan window. (GitHub)
Kendala yang umum terjadi pada pendekatan ini:
Mask hasil segmentasi tidak selalu menghasilkan garis dinding yang presisi.
Ketebalan wall pada blueprint berbeda-beda sehingga bounding mask sering bergeser.
Junction antar wall (L, T, dan Cross Intersection) sulit direkonstruksi secara akurat.
Blueprint dengan style berbeda menghasilkan kualitas deteksi yang berbeda.
Hasil segmentasi masih berupa pixel mask sehingga belum menjadi struktur geometris yang bersih.
Rekomendasi Perbaikan (Fase 1.1)
Sebelum masuk ke furniture atau object recognition lanjutan, sebaiknya fokus pada peningkatan akurasi wall reconstruction.
1. Tambahkan Wall Post-Processing
Setelah Mask R-CNN mendeteksi wall:
Mask Detection
↓
Morphological Cleanup
↓
Contour Extraction
↓
Centerline Detection
↓
Wall Reconstruction
↓
Generate JSON Floor Plan
Tujuannya:
Membersihkan noise.
Menyatukan wall yang terputus.
Merapikan sudut pertemuan dinding.
Menghasilkan garis centerline yang konsisten.
2. Gunakan Wall Centerline
Daripada menggunakan area mask secara langsung:
Detected Wall Area
↓
Skeletonization
↓
Centerline
↓
Generate Wall Geometry
Dengan pendekatan ini:
Ketebalan wall bisa dibuat konsisten.
Sudut ruangan lebih presisi.
Layout lebih mendekati CAD.
Repository hasil fork yang lebih advanced bahkan sudah menambahkan:
Wall centerline analysis
Wall thickness profiling
Junction detection
Real-world measurement conversion
(GitHub)
3. Simpan Hasil Sebagai Data Geometri
Daripada menyimpan hasil sebagai image overlay:
{
"walls": [
{
"start": [100, 50],
"end": [400, 50],
"thickness": 20
}
]
}
Kemudian render menggunakan:
Three.js
Blueprint3D
Architect3D
Pendekatan ini jauh lebih akurat dibanding render berdasarkan bitmap.
Referensi engine:
Prioritas Berikutnya
Urutan yang disarankan:
Tahap 1
Wall Detection
Wall Centerline Extraction
Wall Thickness Calculation
Room Boundary Generation
Target:
Akurasi struktur ≥ 90%
Tahap 2
Door Detection
Window Detection
Door Orientation
Window Orientation
Target:
Posisi pintu dan jendela sesuai blueprint
Tahap 3
Symbol Detection
Furniture Detection
CAD Symbol Mapping
3D Object Generation
Tahap 4
Drag & Drop Furniture
Interior Editing
Real-time 3D Preview
Kesimpulan
Saat ini bottleneck utama bukan lagi proses image-to-floorplan, melainkan akurasi rekonstruksi dinding (wall reconstruction). Fokus pengembangan berikutnya sebaiknya pada:
Wall centerline extraction.
Junction detection (L, T, Cross).
Wall thickness normalization.
Konversi hasil deteksi menjadi data geometri (JSON) daripada langsung menggunakan mask image.
Jika keempat area tersebut sudah stabil, maka akurasi floor plan web akan jauh lebih mendekati blueprint asli dan siap menjadi fondasi untuk deteksi pintu, jendela, serta fitur drag-and-drop furniture pada fase berikutnya.





Loading ...
