ReconstructAT - Hava Üçgenlemesi
Genel Bakış
ReconstructAT arayüzü Hava Üçgenlemesi (Aerotriangulation) gerçekleştirmek için kullanılır ve ince kontrol gerektiren profesyonel kullanıcılar için tercih edilen arayüzdür. Bu arayüz detaylı parametre ayarları sağlar ve kamera gruplama, POS içe aktarma ve kontrol noktası içe aktarma gibi gelişmiş özellikleri destekler.
Uygulanabilir Senaryolar
- Hava üçgenlemesi parametreleri üzerinde ince kontrol gerektirir
- Hava üçgenlemesi sonuçlarını kontrol etme ve optimize etme gereksinimi
- Çoklu kamera sistemi yeniden yapılandırması
- Kontrol noktalarını entegre etme gereksinimi
Arayüz Kullanımı
Komut Satırı Kullanımı
reconstruct_full_engine.exe -reconstruct_type 1 -task_json at_config.json
Parametre Açıklaması
reconstruct_type
:1
olarak sabit (ReconstructAT'yi belirtir)task_json
: Yapılandırma dosyası yolu
Yapılandırma Parametreleri
Gerekli Parametreler
Parametre | Tür | Açıklama |
---|---|---|
license_id | int | SDK lisans kodu, 9200 olarak birleştirilmiş |
working_dir | string | Ara dosyalar ve nihai sonuçlar için çalışma dizini |
gdal_folder | string | GDAL veri yolu (SDK harici veri klasörü) |
coordinate_system | JSON | Giriş görüntü konumları için koordinat sistemi |
image_meta_data | JSON Array | Giriş görüntü meta veri bilgileri |
camera_meta_data | JSON Array | Kamera meta veri bilgileri |
İsteğe Bağlı Parametreler
Parametre | Tür | Varsayılan | Açıklama |
---|---|---|---|
input_image_type | int | 1 | Görüntü türü: 1=RGB, 2=Çoklu spektral, 3=Kızılötesi |
remove_small_part | bool | false | AT sonuçlarından küçük bağlı bileşenleri kaldırıp kaldırmayacağı |
output_tie_point_las | bool | false | Bağlantı noktalarını LAS formatında çıktı alıp almayacağı |
output_block_change_xml | bool | true | AT sonuçlarını ContextCapture XML formatında çıktı alıp almayacağı |
coordinate_system_AT | JSON | - | XML format AT çıktı sonuçları için koordinat sistemi |
fast_mode | bool | false | Hızlı mod, GPS'li veriler için uygun |
use_image_position_constraint | bool | true | Görüntü konum bilgilerini kısıtlama olarak kullanıp kullanmayacağı |
use_voc_index | bool | true | Eşleştirme çifti arama için görüntü geri alma kullanıp kullanmayacağı |
use_spatial_index | bool | true | Eşleştirme çifti arama için GPS mesafesi kullanıp kullanmayacağı |
Veri Yapısı Açıklaması
Görüntü Meta Verileri
{
"id": 1, // Benzersiz görüntü ID'si
"path": "path/to/image.jpg", // Mutlak görüntü yolu
"group": "camera_1", // Kamera grubu ID'si (isteğe bağlı)
"meta_data": { // Görüntü bilgileri (gerekli)
"width": 6000, // Görüntü genişliği (piksel)
"height": 4000, // Görüntü yüksekliği (piksel)
"camera_id": 1, // İlgili kamera ID'si (isteğe bağlı, 'pre_calib_param' sağlanırsa kamera meta verileri tarafından üzerine yazılır)
"pos": [lon, lat, alt], // Konum [boylam, enlem, yükseklik]
"pos_sigma": [1.0, 1.0, 2.0], // Konum doğruluğu (metre)
"orientation": [...], // Dönüş matrisi (9 değer, isteğe bağlı)
"position_constant": false, // Konumu sabitleyip sabitlemeyeceği
"relative_altitude": 100.0, // Göreceli uçuş yüksekliği (isteğe bağlı)
"focal_length_in_35mm": 24, // 35mm eşdeğer odak uzaklığı
"pre_calib_param": [...], // Ön kalibrasyon parametreleri (isteğe bağlı, 'focal_length_in_35mm' sağlanırsa üzerine yazılır)
"dewarp_flag": false // Bozulma düzeltme bayrağı (isteğe bağlı, DJI XMP verilerinden)
}
}
Kamera Meta Verileri
{
"id": 1, // Benzersiz kamera ID'si
"meta_data": {
"camera_name": "DJI FC6310", // Kamera adı
"width": 6000, // Sensör genişliği (piksel)
"height": 4000, // Sensör yüksekliği (piksel)
"parameters": [ // Kamera iç parametreleri (isteğe bağlı, 10 elemanı dizi, placeholder_param şu anda yer tutucu parametre)
// fx, fy, cx, cy, k1, k2, p1, p2, k3,placeholder_param
]
}
}
Koordinat Sistemi
{
"type": 2, // 0=LocalENU, 1=Local, 2=Geographic, 3=Projected, 4=ECEF
"epsg_code": 4326, // EPSG kodu (Geographic/Projected/ECEF için gerekli)
"wkt": "...", // WKT dizesi (epsg_code'u değiştirebilir)
"origin_point": [lon, lat, alt], // LocalENU orijini (sadece type=0 için gerekli)
"offset": [0, 0, 0] // Koordinat sistemi orijinine göre ofset
}
Tam Yapılandırma Örnekleri
Temel Hava Üçgenlemesi Yapılandırması
{
"license_id": 9200,
"working_dir": "C:/Projects/AT_Task",
"gdal_folder": "C:/MipMap/SDK/data",
"coordinate_system": {
"type": 2,
"epsg_code": 4326
},
"camera_meta_data": [
{
"id": 1,
"meta_data": {
"camera_name": "DJI FC6310",
"width": 5472,
"height": 3648
}
}
],
"image_meta_data": [
{
"id": 1,
"path": "C:/Images/DJI_0001.JPG",
"meta_data": {
"width": 5472,
"height": 3648,
"camera_id": 1,
"pos": [114.123456, 22.123456, 100.5],
"pos_sigma": [2.0, 2.0, 3.0]
}
},
{
"id": 2,
"path": "C:/Images/DJI_0002.JPG",
"meta_data": {
"width": 5472,
"height": 3648,
"camera_id": 1,
"pos": [114.123556, 22.123456, 100.8],
"pos_sigma": [2.0, 2.0, 3.0]
}
}
],
"output_tie_point_las": true,
"output_block_change_xml": true
}
Çoklu Kamera Grubu Yapılandırması
{
"license_id": 9200,
"working_dir": "C:/Projects/MultiCamera_AT",
"gdal_folder": "C:/MipMap/SDK/data",
"coordinate_system": {
"type": 2,
"epsg_code": 4326
},
"camera_meta_data": [
{
"id": 1,
"meta_data": {
"camera_name": "Camera_Nadir",
"width": 6000,
"height": 4000
}
},
{
"id": 2,
"meta_data": {
"camera_name": "Camera_Oblique",
"width": 6000,
"height": 4000
}
}
],
"image_meta_data": [
{
"id": 1,
"path": "nadir/IMG_0001.JPG",
"group": "nadir",
"meta_data": {
"width": 6000,
"height": 4000,
"camera_id": 1,
"pos": [114.123456, 22.123456, 200.0],
"pos_sigma": [0.05, 0.05, 0.10]
}
},
{
"id": 2,
"path": "oblique/IMG_0001.JPG",
"group": "oblique_forward",
"meta_data": {
"width": 6000,
"height": 4000,
"camera_id": 2,
"pos": [114.123456, 22.123456, 200.0],
"pos_sigma": [0.05, 0.05, 0.10]
}
}
],
"fast_mode": true
}
Yüksek Hassasiyetli RTK/PPK Yapılandırması
{
"license_id": 9200,
"working_dir": "C:/Projects/RTK_AT",
"gdal_folder": "C:/MipMap/SDK/data",
"coordinate_system": {
"type": 2,
"epsg_code": 4326
},
"camera_meta_data": [
{
"id": 1,
"meta_data": {
"camera_name": "DJI P1",
"width": 8192,
"height": 5460,
"parameters": [8839.5, 8839.5, 4096, 2730, 0, 0, 0, 0, 0, 0]
}
}
],
"image_meta_data": [
{
"id": 1,
"path": "C:/RTK_Images/IMG_0001.JPG",
"meta_data": {
"width": 8192,
"height": 5460,
"camera_id": 1,
"pos": [114.12345678, 22.12345678, 150.123],
"pos_sigma": [0.02, 0.02, 0.05], // Yüksek hassasiyetli RTK
"orientation": [
// 3x3 dönüş matrisi (IMU verileri mevcut ise)
]
}
}
],
"use_image_position_constraint": true
}
Çıktı Sonuçları
Hava üçgenlemesi tamamlandıktan sonra, çalışma dizininde aşağıdakiler oluşturulacaktır:
1. Ara Sonuçlar Dizini (milestones/
)
mvs.xml
- İç format hava üçgenlemesi sonuçlarımvs_undistort.xml
- Bozulma düzeltilmiş hava üçgenlemesi sonuçlarıroi.json
- Otomatik hesaplanan ilgi alanıcs.json
- Koordinat sistemi bilgileritie_points.las
- Bağlantı nokta bulutu (etkinleştirilmişse)
2. Dışa Aktarma Sonuçları (products/AT/
)
block_exchange.xml
- ContextCapture formatı hava üçgenlemesi sonuçları (etkinleştirilmişse)
3. Günlük Dosyaları (log/
)
log.txt
- Detaylı işleme günlüğü
ROI Kullanım Açıklaması
Hava üçgenlemesi sonrasında oluşturulan roi.json
üç tür ROI içerir:
{
"rois": [
{
"type": "Smart", // Seyrek noktalar temelinde akıllıca hesaplanmış
"roi": {
"boundary": [...], // 2D sınır köşeleri
"min_z": 100.0, // Minimum yükseklik
"max_z": 200.0 // Maksimum yükseklik
}
},
{
"type": "Maximal", // Görüntü konumları ve seyrek noktalara dayalı
"roi": {...}
},
{
"type": "Frustum", // Görüntü kesik piramitlerierine dayalı
"roi": {...}
}
]
}
En İyi Uygulamalar
1. Görüntü Hazırlığı
- Görüntü EXIF'inin tam GPS bilgisi içerdiğinden emin olun
- Önerilen görüntü örtüşmesi >%60
- Bulanık veya aşırı pozlanmış görüntülerden kaçının
2. Parametre Optimizasyonu
- Standart GPS: Varsayılan
pos_sigma
[2.0, 2.0, 3.0] kullanın - RTK/PPK: [0.05, 0.05, 0.10] gibi daha küçük
pos_sigma
ayarlayın - Hızlı Mod: GPS mevcut olduğunda
fast_mode
'u etkinleştirin
3. Çoklu Kamera İşleme
- Farklı kameraları tanımlamak için
group
parametresini kullanın - Her kamera grubu için bağımsız
camera_id
kullanın - Kamera parametrelerinin doğru olduğundan emin olun
4. Büyük Veri Seti Optimizasyonu
- İşlemi hızlandırmak için
fast_mode
'u etkinleştirin - Sonuçları temizlemek için
remove_small_part
kullanmayı düşünün - Makul bellek kullanım sınırları belirleyin
Sık Sorulan Sorular
S: Hava üçgenlemesi "yetersiz görüntü eşleştirmesi" ile başarısız oldu
C: Şunları kontrol edin:
- Görüntü örtüşmesi yeterli mi (>%60)?
- GPS bilgileri doğru mu?
- Görüntü kalitesi iyi mi?
S: Hava üçgenlemesi doğruluğu nasıl artırılır?
C:
- Yüksek hassasiyetli POS verileri (RTK/PPK) kullanın
- Uygun
pos_sigma
değerleri ayarlayın - Kontrol noktaları eklemek için OptimizeAT kullanın
S: Çoklu kamera sistemleri nasıl kurulur?
C:
- Her kamera için bağımsız
camera_meta_data
oluşturun - Farklı kameralardan görüntüleri ayırt etmek için
group
parametresini kullanın - Kamera iç parametrelerinin doğru olduğundan emin olun
Sonraki Adımlar
- Hava üçgenlemesi sonuçlarını optimize etmek için OptimizeAT kullanın
- 3D yeniden yapılandırma için Reconstruct3D kullanın
- Tam iş akışını anlamak için Temel Kavramlar'ı kontrol edin
Not: ReconstructAT maksimum esneklik sağlar, ancak aynı zamanda daha fazla parametre ayarı gerektirir. Sadece hızlı yeniden yapılandırmaya ihtiyacınız varsa, ReconstructFull kullanmanızı öneririz.