-
데이터 변경이력
데이터 변경이력 버전 일자 변경내용 비고 1.0 2022-07-13 데이터 최초 개방 데이터 히스토리
데이터 히스토리 일자 변경내용 비고 2022-10-21 신규 샘플데이터 개방 2022-07-13 콘텐츠 최초 등록 소개
– 정형화된 정밀농업 농기계 자율주행 이미지 확보 및 AI 서비스 모델 개발 – 동/정적 객체가 포함된 노지의 지형, 작물 등의 환경조건에 따른 다중 센서 데이터 획득: GPS/IMU, Lidar, 카메라(주행영상, 2D RGB, NIR), 농기계 차량정보, GPS 시각동기화 데이터, 센서별 설치 정보 데이터 – 농기계 자율주행을 위한 농작지 인식 모델 및 위험물 인식 모델 개발
구축목적
부족한 농촌인력 대체와 노지의 주요 핵심 작물에 대한 농업자동화를 위한 정밀농업 농기계의 자율주행 인공지능 데이터 구축
-
메타데이터 구조표 데이터 영역 농축수산 데이터 유형 이미지 데이터 형식 jpg, pcd 데이터 출처 자체 수집 라벨링 유형 이미지: 바운딩박스/폴리곤, 라이다: 3D 큐보이드 라벨링 형식 json 데이터 활용 서비스 농기계 자율주행을 위한 농작지 인식 모델 / 위험물 인식 모델 데이터 구축년도/
데이터 구축량2021년/2D-RGB 데이터: 266,905장, NIR 데이터: 253,500장, Lidar 데이터: 80,311장, 총 데이터: 600,716장 -
1. 데이터 통계
- 원천 데이터 총 600,716건 (RGB 266,905건, NIR 253,500건, Lidar 80,311건)
1. 데이터 통계 데이터 종류 데이터 형태 원천 데이터 규모 라벨링데이터 규모 RGB 원천 데이터 bounding box 132,351 132,351 RGB 원천 데이터 polygon 134,554 134,554 NIR 원천 데이터 bounding box 132,213 132,213 NIR 원천 데이터 polygon 121,287 121,287 LIDAR 원천 데이터 lidar 80,311 80,311 총합 600,716 600,716
2. 클래스 별 라벨링 객체 수량 분포
-
객체명 바운딩박스 폴리곤 큐보이드 합계 비율 건수 건수 건수 common_person 295,307 84,782 380,089 13.53% common_pole 316,657 61,943 378,600 13.48% common_rocks 29,294 6,001 35,295 1.26% common_tractor 43,793 13,164 56,957 2.03% common_vail 629,264 40,364 669,628 23.84% common_vehicle 59,053 5,471 64,524 2.30% common_road 175,310 175,310 6.24% common_tree 8,996 123,967 132,963 4.73% field_corps 7,916 7,916 0.28% field_furrow 68,745 68,745 2.45% field_levee 289,411 289,411 10.30% orchard_road 11,900 11,900 0.42% orchard_tree 21,972 21,972 0.78% paddy_after_driving 141,186 141,186 5.03% paddy_before_driving 108,135 108,135 3.85% paddy_edge 104,154 104,154 3.71% paddy_rice 147,356 147,356 5.25% paddy_water 14,635 14,635 0.52% 합계 1,382,364 1,214,687 211,725 2,808,776 100.00%
- 원천 데이터 총 600,716건 (RGB 266,905건, NIR 253,500건, Lidar 80,311건)
-
-
AI 모델 상세 설명서 다운로드
AI 모델 상세 설명서 다운로드 AI 모델 다운로드1. 활용모델
- 모델학습
- 인공지능 데이터 활용 모델 요약표
1. 활용모델 데이터명 AI 모델 모델 성능 지표 응용서비스(예시) 정밀 농기계 자율주행 데이터 농기계 자율주행을 위한 농작지 인식 모델 mIOU >= 0.8 농기계 자율주행 시스템 (mean Intersection over Union) 농기계 자율주행을 위한 위험물 인식 모델 mAP >= 0.8 (mean Average Precision) - 가. 농기계 자율주행을 위한 농작지 인식 모델
- 경작지 자율주행을 위한 경계선 및 경작지 인식이 가능한 ‘농기계 자율주행을 위한 농작지 인식 모델’ 개발
- 논/밭/과수원에서 트랙터의 자율 주행시 고랑과 이랑을 탐색하여, 고랑(이랑)의 시작과 끝, 휘어짐 등을 판단하여 트랙터의 동선 추정 가능
- 폴리곤 세그멘테이션 형태로 경작지 내 농로/진입로/고랑/이랑 등을 판단
- 토양의 상태와 지형, 작물, 비닐 멀칭 등을 인식해 최적의 경로를 파악, 경작지 내에서 주행이 가능
- 두둑과 고랑은 서로 구분하며 각각의 객체를 구분 하고, 피해야 할 물체는 semantic을 기준으로 구분할 수 있도록 모델 개발
[농작지 자율주행을 위한 농작지 인식 모델]
- AI 학습 모델
경작지 자율주행을 위한 경계선 및 경작지 인식이 가능한 농기계 자율주행을 위한 농작지 인식 모델은 폴리곤 데이터셋에 대해서 Semantic Segmentation을 위해 Segformer를 이용함
*SegFormer: Simple and Efficient Design for Semantic Segmentation with Transformers
[SegFormer 구조]- hierarchical Transformer 구조가 encoder의 핵심으로 SegFormer에서는 계층적인 구조로 CNN과 같이 high-resolution coarse feature와 low-resolution fine feature 모두를 생성 가능
- Transformer Block은 Efficient Self-Attn와 Mix-FFN 다음에 Overlap Patch Matching 을 통해 hierarchical feature map을 생성 가능, Overlap Patch Matching에서는 convolution network를 사용하여 stride, padding으로 overlap 되는 patch를 샘플링해서, local continuity를 계속 갖고 갈 수 있도록 함
- Efficient Self-Attn에서는 K(key)의 dimension reduction을 통해서 complexity를 줄이고 Mix-FFN에서는 convolution layer을 가운데 넣어서 zero padding으로 positional encoding을 대신할 수 있도록 함. 기존의 positional encoding의 resolution은 고정되어 있다는 단점이 있는데, zero padding을 사용하면 train 과 test의 resolution이 달라도 성능에 크게 영향이 없다는 장점
- decoder 구조가 단순함. 각 transformer를 통해 나온 multi-level feature들은 MLP Layer를 통과해서 channel dimension을 맞추고 upsample 해서 concatenate 된 후 MLP 를 통과하여 최종 segmentation map이 나옴
[NN-based network (DeepLabv3+)와 SegFormer의 effective receptive field 분석 결과 비교] - 일반적인 CNN-based network (DeepLabv3+)와 SegFormer의 effective receptive field 분석 결과 비교시 SegFormer의 receptive field가 훨씬 큼. hierarchical transformer encoder 구조가 좋은 결과를 가능케 하여 단순한 MLP 구조의 decoder로도 굉장히 좋은 성능을 낼 수 있음
- 나. 농기계 자율주행을 위한 위험물 인식 모델
- 자율주행을 위한 농작지에서의 객체 및 장애물 추정이 가능한 ‘농기계 자율주행을 위한 위험물 인식 모델’ 개발
- 논/밭/과수원 등의 농작지에서 자율 주행에 방해가 되는 나무/바위 등의 고정 장애물과 사람 등의 이동 장애물을 판단 및 추정 가능
- 2D RGB 이미지와 2D NIR(Near Infra Red) 이미지를 이용하여 주간 및 해질녁에도 사용이 가능한 객체 및 장애물 데이터 추정 가능
- 영상 내 작물, 두둑, 고랑, 피해야 할 물체(사람, 동물, 장애물, 웅덩이 등)가 차지하고 있는 영역을 추정하고 작물은 객체를 구분하지 않고 검출 가능
- 논/밭/과수원에서 트랙터의 자율 주행시 정확한 판단을 위해 NIR/RGB 이미지를 동시에 학습
- 토양의 상태 및 비닐 멀칭등은 구분할 수 없으나, 주행 경로상의 장애물 판단과 경작지 경계면 검출시에 보다 정확한 판단이 가능
- 바운딩 박스 형태의 라벨링 데이터를 이용하여 Object Classification 모델링 개발
- 기 구축된 농작물 데이터 활용 가능 여부를 검토하여 가능시 활용 예정.
[자율주행을 위한 농작지(농로)에서의 위험물 인식 모델]
- AI 학습 모델
자율주행을 위한 농작지에서의 객체 및 장애물 추정이 가능한 농기계 자율주행을 위한 위험물 인식 모델은 YOLOv4를 이용함
* YOLO (You Only Look Once): Unified, Real-Time Object Detection
Object Detection과 Classification 통합(Unified)하여 진행
2-Stage Object Detector(기존 DPM, R-CNN)는 bounding box를 구한 후, class probability를 구하기 때문에, 그 속도가 느리다. 이와 달리, YOLO는 이 모든 과정을 A Single Neural Network로 만들어, 빠른 속도를 갖는 특징이 있음.
- 인공지능 데이터 활용 모델 요약표
2. 향후 활용 분야 및 활용 서비스 내역
- 농기계 제조사의 자율주행 기술 개발
- 농기계 자율주행용 데이터셋을 활용한 자율주행 인공지능 기술 및 솔루션 개발이 활성화되어 양산성 있는 자율주행 농기계 개발 및 보급 확대 예상. 농업 생산성 향상 및 수익성 향상 기대.
- 정밀농업 솔루션에 따른 경운/시비/방제/수확등의 농작업을 무인 자동으로 수행하게 하여 미래 정밀농업을 구현. 농촌인구감소 및 고령화로 인한 인력문제를 해결.
- 농작지 인식 AI모델을 활용한 예상 서비스
농작지내에서 농기계 작업(주행, 경운등)을 할 때 농작지 및 논두렁을 인식하여 농작지 내에서만 작업을 하고 논두렁을 벗어나지 않도록 자율주행을 구현할 수 있음. 또한 농작지간 농로를 이동할때에도 농로를 인식하여 농로에서 벗어나지 않고 경작지로 이동할 수 있도록 자율주행 기술을 개발할 수 있음. - 장애물 인식 AI모델을 활용한 예상 서비스
장애물 인식 모델을 활용하여 경작지내 자율주행/작업시 전방 장애물(사람, 농기계, 돌, 작물 등)을 인식하여 장애물 인식시 비상정지를 하거나, 장애물을 회피하여 주행하도록 자율주행 기술을 개발할 수 있음. 또한 농로 주행시도 장애물(차량, 전봇대 등)을 인식하여 회피 주행이 가능하도록 자율주행 기술을 개발할 수 있음. 그리고 경작지내 작물을 인식하여 농기계가 작물을 훼손하지 않도록 주행경로를 생성하여 자율주행 가능하도록 기술을 개발할 수 있음.
- 자율주행 센서 및 영상처리장치 개발 업체
- 무인 자율주행기술 솔루션을 위한 영상처리 시스템 개발 및 고성능 컴퓨팅 하드웨어 플랫폼과 소트프웨어 개발에 활용
- 차량용 자율주행 솔루션 개발업체에서 본 구축 데이터 및 AI모델을 활용하여, 농기계용 자율주행 솔루션 사업에 진출 가능함. 선진 차량용 기술이 빠르게 농업 영역으로 확대 가능하며 고성능/저비용의 농업용 자율주행 솔루션 개발이 가능함.
- 빅데이터, 스마트팜, 정밀농업 기술개발 기초자료 및 분석자료로 활용
- 연구기관 및 공공기관에서 본과제의 구축 데이터 및 AI모델을 검토하여 향후 기술개발 방향 및 과제를 정의할 수 있음. 이를 통해 AI모델을 활용한 자율주행 농기계 기술이 빠르게 상용화되고 보급될 수 있음.
- 모델학습
-
설명서 및 활용가이드 다운로드
데이터 설명서 다운로드 구축활용가이드 다운로드- 농기계 자율주행을 위한 AI학습용 이미지 데이터셋으로, 논/ 밭/ 과수원 클래스별 농기계 주행/작업시 인식되는 주요객체를 선정하여 실작업 조건의 데이터셋을 구축함.
- 2D-RGB/ 2D-NIR 카메라 이미지 및 Lidar 이미지 데이터 및 환경조건에 따른 센서데이터(GPS/IMU, 차량정보 등)를 구축함.
- 여러 농기계에서 활용할 수 있게 농기계 전방 상/중/하 위치별 수집데이터를 구축함.
- 사람, 차량등의 민감정보 비식별처리를 진행하고 촬영된 사람대상으로 초상권 이용동의서를 받아 법적문제를 해결한 원천데이터 확보
-
원천데이터 원천데이터 RGB NIR LiDAR 가공 예시 - box 라벨링 데이터 구조
구분 항목명 타입 필수여부 설명 범위 비고 1 license array N 저작권 2 info[] array Y 일반 정보 2-1 info[].contributor string Y 기여자 2-2 info[].date_created string Y 데이터 생성일 2-3 info[].description string Y 데이터 설명 2-4 info[].url string N 이미지 주소 2-5 info[].version number N 가공 버전 2-6 info[].year number N 가공 년도 3 images[] array Y 이미지 정보 3-1 images[].id number Y 이미지 고유 ID 3-2 images[].file_name string Y 이미지 파일명 3-3 images[].width number Y 이미지 너비 0~1920 1920 3-4 images[].height number Y 이미지 높이 0~1080 1080 3-5 images[].latitude number N 위도 32.12345 3-6 images[].longitude number N 경도 127.12355 3-7 images[].time string Y 촬영시간 hh:mm:ss 3-8 images[].heading number N IMU Heading 0~360 3-9 images[].pitch number N IMU Pitch -999~ 999 3-10 images[].roll number N IMU Roll -999~ 999 4 categories[] array Y 객체 정보 4-1 categories[].id number Y 객체 고유 ID 4-2 categories[].name enum Y 객체 이름 4-3 categories[].supercategory string N 객체 상위 카테고리 5 annotations[] array Y 어노테이션 정보 5-1 annotations[].id number Y 고유 ID 5-2 annotations[].image_id string Y 이미지 고유 ID 5-3 annotations[].category_id string Y 객체 고유 ID 5-4 annotations[].bbox array Y 어노테이션 좌표 [xtl, ytl, width, height] 5-5 annotations[]iscrowd number N 객체 군집 유무 5-6 annotations[].area number Y 객체 면적 5-7 annotations[].size enum Y 객체 크기 분류 “S”, “M”,”L” “S”, “M”,”L” 5-8 annotations[].occluded number Y 가림 및 잘림 여부 0, 1 - cuboid 라벨링 데이터 구조
구분 항목명 타입 필수여부 설명 범위 비고 1 mode string N 가공모드 2 images[] array Y 이미지 정보 2-1 images[].image_id number Y 이미지 고유 ID 2-2 images[].name string Y 이미지 파일명 2-3 images[].latitude number N 위도 32.12345 2-4 images[].longitude number N 경도 127.12355 2-5 images[].time string Y 촬영시간 hh:mm:ss 2-6 images[].heading number N IMU heading 0~360 nnn 2-7 images[].pitch number N IMU pitch -999~ 999 nnn 2-8 images[].roll number N IMU roll -999~ 999 nnn 2-9 images[].objects[] array Y 객체 정보 2-9-1 images[].objects[].position number Y 라벨링 데이터 원점 0~999 x, y, z 2-9-2 images[].objects[].scale number Y 객체 크기 0~999 x, y, z 2-9-3 images[].objects[].rotation number Y 객체 회전각 0~999 x, y, z 2-9-4 images[].objects[].area number Y 객체 면적 2-9-5 images[].objects[].size enum Y 객체 크기 분포 “S”, “M”,”L” “S”, “M”,”L” 2-9-6 images[].objects[].obj_type enum Y 객체 명 트랙터 2-9-7 images[].objects[].obj_id number N 객체 분류 코드 null - polygon 라벨링 데이터 구조
구분 항목명 타입 필수여부 설명 범위 비고 1 mode string N 가공모드 2 images[] array Y 이미지 정보 2-1 images[].image_id number Y 이미지 고유 ID 2-2 images[].name string Y 이미지 파일명 2-3 images[].width string Y 이미지 너비 0~1920 1920 2-4 images[].height string Y 이미지 높이 0~1080 1080 2-5 images[].latitude number N 위도 32.12345 2-6 images[].longitude number N 경도 127.12355 2-7 images[].time string Y 촬영시간 hh:mm:ss 2-8 images[].heading number N IMU heading 0~360 nnn 2-9 images[].pitch number N IMU pitch -999~ 999 nnn 2-10 images[].roll number N IMU roll -999~ 999 nnn 2-11 images[].objects[] array Y 객체 정보 2-11-1 images[].objects[].label enum Y 객체 명 농로 2-11-2 images[].objects[].type string Y 가공 타입 폴리곤 2-11-3 images[].objects[].position[] array Y 어노테이션 좌표 [x1,y1,x2,y2...xn,yn] 2-11-4 images[].objects[].area number Y 객체 면적 2-11-5 images[].objects[].size enum Y 객체 크기 분포 “S”, “M”,”L” “S”, “M”,”L” 2-12 images[].occluded number Y 가림 및 잘림 여부 0: 기본 1: 가림 2-13 images[].z_order number N 객체 원근 순서 2-14 images[].attributes[] array N 라벨 속성
라벨링데이터 실제예시
- polygon 라벨링 데이터 예시
구분 세부내용 라벨링 이미지
(JPG)어노테이션
결과
(JSON){
"mode": "annotation",
"images": [
{
"image_id": "0",
"name":
"NIA_AgricultureAD_paddy_Gyeongsangnamdo_2107291234_day_sunny_000300.jpg",
"width": "1920",
"height": "1080",
"latitude": 36.12345,
"longitude": 127.12345,
"time": 174106,
"heading": 128,
"pitch: 004,
"roll": 359
"objects": [
{
"label": "common_road",
"type": "polygon",
"position": [
[
523.4,
1080.0,
685.8,
981.3,
866.2,
867.0,
932.4,
824.8,
963.85,
807.04,
988.5,
807.2,
1002.8,
807.5,
1018.3,
807.8,
1031.1,
808.2,
1140.71,
845.06,
1308.3,
905.26,
1558.8,
997.9,
1813.1,
1080.0
]
],
"occluded": 0,
"z_order": 1,
"attributes": []
}
]
}
]
} - box 라벨링 데이터 예시
구분 세부내용 라벨링 이미지
(JPG)어노테이션
결과
(JSON){
"licenses": [],
"info": {
"contributor": "Testworks",
"date_created": "2021-07-21 15:26:28",
"description": "NIA Agricultural Autonomous Driving Data Annotations",
"url": "https://board.blackolive.co.kr/",
"version": 1.0,
"year": 2021
},
"images": [
{
"id": 1,
"name":
“NIA_AgricultureAD_paddy_Gyeongsangnamdo_2107291234_day_sunny_000300.jpg",
"width": 1920,
"height": 1080,
"latitude": 36.12345,
"longitude": 127.12345,
"time": 174106,
"Roll": -002,
"Pitch: 004,
"Yaw": 359
}
],
"categories": [
{
"id": 1,
"name": "road",
"supercategory": "common"
},
{
"id": 2,
"name": "vail",
"supercategory": "common"
},
{
"id": 3,
"name": "vehicle",
"supercategory": "common"
},
{
"id": 4,
"name": "tractor",
"supercategory": "common"
},
{
"id": 5,
"name": "rocks",
"supercategory": "common"
},
{
"id": 6,
"name": "tree",
"supercategory": "common"
},
{
"id": 7,
"name": "person",
"supercategory": "common"
},
{
"id": 8,
"name": "pole",
"supercategory": "common"
},
{
"id": 9,
"name": "road",
"supercategory": "orchard"
},
{
"id": 13,
"name": "furrow",
"supercategory": "filed"
},
{
"id": 14,
"name": "levee",
"supercategory": "filed"
},
{
"id": 18,
"name": "before_driving",
"supercategory": "paddy"
},
{
"id": 19,
"name": "after_driving",
"supercategory": "paddy"
},
{
"id": 20,
"name": "water",
"supercategory": "paddy"
},
{
"id": 21,
"name": "edge",
"supercategory": "paddy"
},
{
"id": 22,
"name": "rice",
"supercategory": "paddy"
}
],
"annotations": [
{
"id": 1,
"image_id": 1,
"category_id": 1,
"bbox": [xtl,ytl,width,height]
"iscrowd": 0,
"area": 95468.98,
"occluded": 0
}
]
} - cuboid 라벨링 데이터 예시
구분 세부내용 라벨링 이미지
(JPG)어노테이션
결과
(JSON){
"mode": "annotation",
"images": [
{
"image_id": "0",
"name": "NIA_AgricultureAD_paddy_Gyeongsangnamdo_2107291234_day_sunny_000300.pcd",
"width": "1024",
"height": "32",
"points": "32768",
"latitude": 36.12345,
"longitude": 127.12345,
"time": 174106,
"heading": -002,
"pitch: 004,
"roll": 359
"objects": [
{
"position": {
"x": 17.436717337784955,
"y": 0.18087162307816662,
"z": 0.23347608639275436
},
"scale": {
"x": 2.2772472174421154,
"y": 1.4666516540942975,
"z": 2.3923818745906233
},
"rotation": {
"x": 0,
"y": 0,
"z": 1.7540558982543013
},
"obj_type": "tractor_common",
"obj_id": ""
}
]
}
]
}
-
데이터셋 구축 담당자
수행기관(주관) : (주)대동
수행기관(주관) 책임자명 전화번호 대표이메일 담당업무 김성규 055-530-7222 s8020050@daedong.co.kr · 데이터 수집 및 구축 총괄 수행기관(참여)
수행기관(참여) 기관명 담당업무 유엔젤(주) · AI모델 개발 (주)인터마인즈 · 데이터 검수 (주)테스트웍스 · 데이터 정제 및 가공 한국자동차연구원 · 데이터 수집 국립농업과학원 · 데이터 수집
-
인터넷과 물리적으로 분리된 온라인·오프라인 공간으로 의료 데이터를 포함하여 보안 조치가 요구되는 데이터를 다운로드 없이 접근하고 분석 가능
* 온라인 안심존 : 보안이 보장된 온라인 네트워크를 통해 집, 연구실, 사무실 등 어디서나 접속하여 데이터에 접근하고 분석
* 오프라인 안심존 : 추가적인 보안이 필요한 데이터를 대상으로 지정된 물리적 공간에서만 접속하여 데이터에 접근하고 분석 -
- AI 허브 접속
신청자 - 안심존
사용신청신청자신청서류 제출* - 심사구축기관
- 승인구축기관
- 데이터 분석 활용신청자
- 분석모델반출신청자
- AI 허브 접속
-
1. 기관생명윤리위원회(IRB) 심의 결과 통지서 [IRB 알아보기] [공용IRB 심의신청 가이드라인]
2. 기관생명윤리위원회(IRB) 승인된 연구계획서
3. 신청자 소속 증빙 서류 (재직증명서, 재학증명서, 근로계약서 등 택1)
4. 안심존 이용 신청서 [다운로드]
5. 보안서약서 [다운로드]
※ 상기 신청서 및 첨부 서류를 완비한 후 신청을 진행하셔야 정상적으로 절차가 이루어집니다. -
신청 및 이용관련 문의는 safezone1@aihub.kr 또는 02-525-7708, 7709로 문의
데이터셋 다운로드 승인이 완료 된 후 API 다운로드 서비스를 이용하실 수 있습니다.
API 다운로드 파일은 분할 압축되어 다운로드 됩니다. 분할 압축 해제를 위해서는 분할 압축 파일들의 병합이 필요하며 리눅스 명령어 사용이 필요합니다.
리눅스 OS 계열에서 다운로드 받으시길 권장하며 윈도우에서 파일 다운로드 시 wsl(리눅스용 윈도우 하위 시스템) 설치가 필요합니다.
※ 파일 병합 리눅스 명령어
find "폴더경로" -name "파일명.zip.part*" -print0 | sort -zt'.' -k2V | xargs -0 cat > "파일명.zip"
- 해당 명령어 실행 시, 실행 경로 위치에 병합 압축 파일이 생성됩니다.
- 병합된 파일 용량이 0일 경우, 제대로 병합이 되지 않은 상태이니 "폴더경로"가 제대로 입력되었는지 확인 부탁드립니다.
※ 데이터셋 소개 페이지에서 다운로드 버튼 클릭하여 승인이 필요합니다.