diff --git a/docs/00_problem/acceptance_criteria.md b/docs/00_problem/acceptance_criteria.md index 3c19d3f..44c706c 100644 --- a/docs/00_problem/acceptance_criteria.md +++ b/docs/00_problem/acceptance_criteria.md @@ -1,2 +1,6 @@ -System should find out GPS of centers of all the photos from the flight within error no more than 100 meters in comparison to the real GPS -System should find out GPS of centers of 70% of the photos from the flight within error no more than 30 meters in comparison to the real GPS +System should find out GPS of centers of 80% of the photos from the flight within error no more than 50 meters in comparison to the real GPS +System should find out GPS of centers of 60% of the photos from the flight within error no more than 10 meters in comparison to the real GPS +System should correctly continue the work even in a presence of up to 350 meters outlier photo between 2 consecutive photos en route. This could happen due to tilt of the plane. +System should correctly continue the work even during sharp turns, where the next photo doesn't overlap at all, or overlaps in less than 5%. Next photo should be in less than 150m drift and angle less than 50% +Number of outliers during the satellite provider images ground check should be less than 10% +In case of absolute incapable of the system to determine next, second next, and third next images gps, by any methods, (these 20% of the route), then it should ask user for an input for the next image, so that user can specify location \ No newline at end of file diff --git a/docs/00_problem/input_data/AD000021.jpg b/docs/00_problem/input_data/AD000021.jpg new file mode 100644 index 0000000..aca11e3 Binary files /dev/null and b/docs/00_problem/input_data/AD000021.jpg differ diff --git a/docs/00_problem/input_data/AD000022.jpg b/docs/00_problem/input_data/AD000022.jpg new file mode 100644 index 0000000..b72f87f Binary files /dev/null and b/docs/00_problem/input_data/AD000022.jpg differ diff --git a/docs/00_problem/input_data/AD000023.jpg b/docs/00_problem/input_data/AD000023.jpg new file mode 100644 index 0000000..ea6210b Binary files /dev/null and b/docs/00_problem/input_data/AD000023.jpg differ diff --git a/docs/00_problem/input_data/AD000024.jpg b/docs/00_problem/input_data/AD000024.jpg new file mode 100644 index 0000000..69f10df Binary files /dev/null and b/docs/00_problem/input_data/AD000024.jpg differ diff --git a/docs/00_problem/input_data/AD000025.jpg b/docs/00_problem/input_data/AD000025.jpg new file mode 100644 index 0000000..8784d0e Binary files /dev/null and b/docs/00_problem/input_data/AD000025.jpg differ diff --git a/docs/00_problem/input_data/AD000026.jpg b/docs/00_problem/input_data/AD000026.jpg new file mode 100644 index 0000000..ed10719 Binary files /dev/null and b/docs/00_problem/input_data/AD000026.jpg differ diff --git a/docs/00_problem/input_data/AD000027.jpg b/docs/00_problem/input_data/AD000027.jpg new file mode 100644 index 0000000..3c73069 Binary files /dev/null and b/docs/00_problem/input_data/AD000027.jpg differ diff --git a/docs/00_problem/input_data/AD000028.jpg b/docs/00_problem/input_data/AD000028.jpg new file mode 100644 index 0000000..148963c Binary files /dev/null and b/docs/00_problem/input_data/AD000028.jpg differ diff --git a/docs/00_problem/input_data/AD000029.jpg b/docs/00_problem/input_data/AD000029.jpg new file mode 100644 index 0000000..261fdb4 Binary files /dev/null and b/docs/00_problem/input_data/AD000029.jpg differ diff --git a/docs/00_problem/input_data/AD000030.jpg b/docs/00_problem/input_data/AD000030.jpg new file mode 100644 index 0000000..468dbc6 Binary files /dev/null and b/docs/00_problem/input_data/AD000030.jpg differ diff --git a/docs/00_problem/input_data/AD000031.jpg b/docs/00_problem/input_data/AD000031.jpg new file mode 100644 index 0000000..b6b144f Binary files /dev/null and b/docs/00_problem/input_data/AD000031.jpg differ diff --git a/docs/00_problem/input_data/AD000032.jpg b/docs/00_problem/input_data/AD000032.jpg new file mode 100644 index 0000000..749190d Binary files /dev/null and b/docs/00_problem/input_data/AD000032.jpg differ diff --git a/docs/00_problem/input_data/AD000033.jpg b/docs/00_problem/input_data/AD000033.jpg new file mode 100644 index 0000000..cc90ac4 Binary files /dev/null and b/docs/00_problem/input_data/AD000033.jpg differ diff --git a/docs/00_problem/input_data/AD000034.jpg b/docs/00_problem/input_data/AD000034.jpg new file mode 100644 index 0000000..cdbb897 Binary files /dev/null and b/docs/00_problem/input_data/AD000034.jpg differ diff --git a/docs/00_problem/input_data/AD000035.jpg b/docs/00_problem/input_data/AD000035.jpg new file mode 100644 index 0000000..d3cf873 Binary files /dev/null and b/docs/00_problem/input_data/AD000035.jpg differ diff --git a/docs/00_problem/input_data/AD000036.jpg b/docs/00_problem/input_data/AD000036.jpg new file mode 100644 index 0000000..3d210e8 Binary files /dev/null and b/docs/00_problem/input_data/AD000036.jpg differ diff --git a/docs/00_problem/input_data/AD000037.jpg b/docs/00_problem/input_data/AD000037.jpg new file mode 100644 index 0000000..bf369d5 Binary files /dev/null and b/docs/00_problem/input_data/AD000037.jpg differ diff --git a/docs/00_problem/input_data/AD000038.jpg b/docs/00_problem/input_data/AD000038.jpg new file mode 100644 index 0000000..2242a0e Binary files /dev/null and b/docs/00_problem/input_data/AD000038.jpg differ diff --git a/docs/00_problem/input_data/AD000039.jpg b/docs/00_problem/input_data/AD000039.jpg new file mode 100644 index 0000000..6fd8d3c Binary files /dev/null and b/docs/00_problem/input_data/AD000039.jpg differ diff --git a/docs/00_problem/input_data/AD000040.jpg b/docs/00_problem/input_data/AD000040.jpg new file mode 100644 index 0000000..6dfcc25 Binary files /dev/null and b/docs/00_problem/input_data/AD000040.jpg differ diff --git a/docs/00_problem/input_data/AD000041.jpg b/docs/00_problem/input_data/AD000041.jpg new file mode 100644 index 0000000..f740d36 Binary files /dev/null and b/docs/00_problem/input_data/AD000041.jpg differ diff --git a/docs/00_problem/input_data/AD000042.jpg b/docs/00_problem/input_data/AD000042.jpg new file mode 100644 index 0000000..193ecdd Binary files /dev/null and b/docs/00_problem/input_data/AD000042.jpg differ diff --git a/docs/00_problem/input_data/AD000043.jpg b/docs/00_problem/input_data/AD000043.jpg new file mode 100644 index 0000000..017b1f2 Binary files /dev/null and b/docs/00_problem/input_data/AD000043.jpg differ diff --git a/docs/00_problem/input_data/AD000044.jpg b/docs/00_problem/input_data/AD000044.jpg new file mode 100644 index 0000000..307c503 Binary files /dev/null and b/docs/00_problem/input_data/AD000044.jpg differ diff --git a/docs/00_problem/input_data/AD000045.jpg b/docs/00_problem/input_data/AD000045.jpg new file mode 100644 index 0000000..9c56d56 Binary files /dev/null and b/docs/00_problem/input_data/AD000045.jpg differ diff --git a/docs/00_problem/input_data/AD000046.jpg b/docs/00_problem/input_data/AD000046.jpg new file mode 100644 index 0000000..4dbee0e Binary files /dev/null and b/docs/00_problem/input_data/AD000046.jpg differ diff --git a/docs/00_problem/input_data/AD000047.jpg b/docs/00_problem/input_data/AD000047.jpg new file mode 100644 index 0000000..6b2f7bb Binary files /dev/null and b/docs/00_problem/input_data/AD000047.jpg differ diff --git a/docs/00_problem/input_data/AD000048.jpg b/docs/00_problem/input_data/AD000048.jpg new file mode 100644 index 0000000..f17bb5d Binary files /dev/null and b/docs/00_problem/input_data/AD000048.jpg differ diff --git a/docs/00_problem/input_data/AD000049.jpg b/docs/00_problem/input_data/AD000049.jpg new file mode 100644 index 0000000..d0c2333 Binary files /dev/null and b/docs/00_problem/input_data/AD000049.jpg differ diff --git a/docs/00_problem/input_data/AD000050.jpg b/docs/00_problem/input_data/AD000050.jpg new file mode 100644 index 0000000..b548f15 Binary files /dev/null and b/docs/00_problem/input_data/AD000050.jpg differ diff --git a/docs/00_problem/input_data/AD000051.jpg b/docs/00_problem/input_data/AD000051.jpg new file mode 100644 index 0000000..69d28c3 Binary files /dev/null and b/docs/00_problem/input_data/AD000051.jpg differ diff --git a/docs/00_problem/input_data/AD000052.jpg b/docs/00_problem/input_data/AD000052.jpg new file mode 100644 index 0000000..14cb723 Binary files /dev/null and b/docs/00_problem/input_data/AD000052.jpg differ diff --git a/docs/00_problem/input_data/AD000053.jpg b/docs/00_problem/input_data/AD000053.jpg new file mode 100644 index 0000000..bfde5e4 Binary files /dev/null and b/docs/00_problem/input_data/AD000053.jpg differ diff --git a/docs/00_problem/input_data/AD000054.jpg b/docs/00_problem/input_data/AD000054.jpg new file mode 100644 index 0000000..a69fc4c Binary files /dev/null and b/docs/00_problem/input_data/AD000054.jpg differ diff --git a/docs/00_problem/input_data/AD000055.jpg b/docs/00_problem/input_data/AD000055.jpg new file mode 100644 index 0000000..a05ba9d Binary files /dev/null and b/docs/00_problem/input_data/AD000055.jpg differ diff --git a/docs/00_problem/input_data/AD000056.jpg b/docs/00_problem/input_data/AD000056.jpg new file mode 100644 index 0000000..3c90865 Binary files /dev/null and b/docs/00_problem/input_data/AD000056.jpg differ diff --git a/docs/00_problem/input_data/AD000057.jpg b/docs/00_problem/input_data/AD000057.jpg new file mode 100644 index 0000000..1db68f8 Binary files /dev/null and b/docs/00_problem/input_data/AD000057.jpg differ diff --git a/docs/00_problem/input_data/AD000058.jpg b/docs/00_problem/input_data/AD000058.jpg new file mode 100644 index 0000000..c7aee73 Binary files /dev/null and b/docs/00_problem/input_data/AD000058.jpg differ diff --git a/docs/00_problem/input_data/AD000059.jpg b/docs/00_problem/input_data/AD000059.jpg new file mode 100644 index 0000000..83e3325 Binary files /dev/null and b/docs/00_problem/input_data/AD000059.jpg differ diff --git a/docs/00_problem/input_data/AD000060.jpg b/docs/00_problem/input_data/AD000060.jpg new file mode 100644 index 0000000..d4c3e1b Binary files /dev/null and b/docs/00_problem/input_data/AD000060.jpg differ diff --git a/docs/00_problem/input_data/coordinates.csv b/docs/00_problem/input_data/coordinates.csv new file mode 100644 index 0000000..88d92a0 --- /dev/null +++ b/docs/00_problem/input_data/coordinates.csv @@ -0,0 +1,61 @@ +image, lat, lon +AD000001.jpg, 48.275292, 37.385220 +AD000002.jpg, 48.275001, 37.382922 +AD000003.jpg, 48.274520, 37.381657 +AD000004.jpg, 48.274956, 37.379004 +AD000005.jpg, 48.273997, 37.379828 +AD000006.jpg, 48.272538, 37.380294 +AD000007.jpg, 48.272408, 37.379153 +AD000008.jpg, 48.271992, 37.377572 +AD000009.jpg, 48.271376, 37.376671 +AD000010.jpg, 48.271233, 37.374806 +AD000011.jpg, 48.270334, 37.374442 +AD000012.jpg, 48.269922, 37.373284 +AD000013.jpg, 48.269366, 37.372134 +AD000014.jpg, 48.268759, 37.370940 +AD000015.jpg, 48.268291, 37.369815 +AD000016.jpg, 48.267719, 37.368469 +AD000017.jpg, 48.267461, 37.367255 +AD000018.jpg, 48.266663, 37.365888 +AD000019.jpg, 48.266135, 37.365460 +AD000020.jpg, 48.265574, 37.364211 +AD000021.jpg, 48.264892, 37.362998 +AD000022.jpg, 48.264393, 37.361086 +AD000023.jpg, 48.263803, 37.361028 +AD000024.jpg, 48.263014, 37.359878 +AD000025.jpg, 48.262635, 37.358277 +AD000026.jpg, 48.261819, 37.357116 +AD000027.jpg, 48.261182, 37.355907 +AD000028.jpg, 48.260727, 37.354723 +AD000029.jpg, 48.260117, 37.353469 +AD000030.jpg, 48.259677, 37.352165 +AD000031.jpg, 48.258881, 37.351376 +AD000032.jpg, 48.258425, 37.349964 +AD000033.jpg, 48.258653, 37.347004 +AD000034.jpg, 48.257879, 37.347711 +AD000035.jpg, 48.256777, 37.348444 +AD000036.jpg, 48.255756, 37.348098 +AD000037.jpg, 48.255375, 37.346549 +AD000038.jpg, 48.254799, 37.345603 +AD000039.jpg, 48.254557, 37.344566 +AD000040.jpg, 48.254380, 37.344375 +AD000041.jpg, 48.253722, 37.343093 +AD000042.jpg, 48.254205, 37.340532 +AD000043.jpg, 48.252380, 37.342112 +AD000044.jpg, 48.251489, 37.343079 +AD000045.jpg, 48.251085, 37.346128 +AD000046.jpg, 48.250413, 37.344034 +AD000047.jpg, 48.249414, 37.343296 +AD000048.jpg, 48.249114, 37.346895 +AD000049.jpg, 48.250241, 37.347741 +AD000050.jpg, 48.250974, 37.348379 +AD000051.jpg, 48.251528, 37.349468 +AD000052.jpg, 48.251873, 37.350485 +AD000053.jpg, 48.252161, 37.351491 +AD000054.jpg, 48.252685, 37.352343 +AD000055.jpg, 48.253268, 37.353119 +AD000056.jpg, 48.253767, 37.354246 +AD000057.jpg, 48.254329, 37.354946 +AD000058.jpg, 48.254874, 37.355765 +AD000059.jpg, 48.255481, 37.356501 +AD000060.jpg, 48.256246, 37.357485 \ No newline at end of file diff --git a/docs/00_problem/input_data/coordinates.yaml b/docs/00_problem/input_data/coordinates.yaml deleted file mode 100644 index 62fab2b..0000000 --- a/docs/00_problem/input_data/coordinates.yaml +++ /dev/null @@ -1,2 +0,0 @@ -AD000005.jpg 48.273997, 37.379828 - diff --git a/docs/00_problem/problem_description.md b/docs/00_problem/problem_description.md index 5c0860e..d36b140 100644 --- a/docs/00_problem/problem_description.md +++ b/docs/00_problem/problem_description.md @@ -1,3 +1,3 @@ -We have a lot of images taken from wing-type UAV by camera with at least full hd resolution. Resolution of each photo could be up to 6200*4100 for the whole flight, but for other flight could be FullHd, f.e. +We have a lot of images taken from wing-type UAV by camera with at least FullHD resolution. Resolution of each photo could be up to 6200*4100 for the whole flight, but for other flight could be FullHD, f.e. Photos are taken and named consecutively within 100 meters distance between each other. -We know only starting GPS coordinates. We need to determine coordinates of centers of each image. And also coordinates of the center of any object on these photos. \ No newline at end of file +We know only starting GPS coordinates. We need to determine coordinates of centers of each image. And also coordinates of the center of any object on these photos. We can use external satellite provider for ground check the existing photos \ No newline at end of file diff --git a/docs/00_problem/restrictions.md b/docs/00_problem/restrictions.md index 0b57dbf..1019c01 100644 --- a/docs/00_problem/restrictions.md +++ b/docs/00_problem/restrictions.md @@ -1,9 +1,9 @@ Photos are taken by only airplane type UAVs. -Photos are taken by the camera pointing downwards and fixed, but it is not autostabilize +Photos are taken by the camera pointing downwards and fixed, but it is not autostabilized. The flying range is restricted by eastern and southern part of Ukraine (To the left of Dnipro river) The image resolution could be from FullHd to 6252*4168 Altitude is prefefined and no more than 1km Flights are done mostly in sunny weather We can use satellite providers, but we're limited right now to Google Maps, which could be possibly outdated for some regions Number of photos could be up to 3000, usually in 500-1500 range -During the flight UAV can make sharp turns, so that it is possible that next photo is absolutely different from the previous one (no same objects), but it is rather exception than the rule +During the flight UAV can make sharp turns, so that it is possible that next photo is absolutely different from the previous one (no same objects), but it is rather exception than the rule \ No newline at end of file diff --git a/docs/_metodology/01_research_phase.md b/docs/_metodology/01_research_phase.md index 2b57182..bfd7bf6 100644 --- a/docs/_metodology/01_research_phase.md +++ b/docs/_metodology/01_research_phase.md @@ -25,8 +25,12 @@ ## 1.2 **✨AI Research**: Research acceptance criteria in great detail Form the next prompt by replacing *.md with corresponding content and run it in DeepResearch tool (Gemini, ChatGPT, or other) **📝prompt:** - For the problem `problem_description.md` check how realistic these acceptance criteria: - `acceptance_criteria.md` + For the problem: + `docs/00_problem/problem_description.md` + with restrictions: + `docs/00_problem/restrictions.md` + check how realistic these acceptance criteria are: + `docs/00_problem/acceptance_criteria.md` Check how critical is each criteria. Also find out more acceptance criteria for this specific domain. Research impact of each value in acceptance criteria to the whole system quality. Assess acceptable ranges for each value in each acceptance criteria in the state of the art solutions, and propose corrections in form: diff --git a/docs/_prompts/1.2_research_acceptance_criteria.md b/docs/_prompts/1.2_research_acceptance_criteria.md index 0c60e7f..c7d17c4 100644 --- a/docs/_prompts/1.2_research_acceptance_criteria.md +++ b/docs/_prompts/1.2_research_acceptance_criteria.md @@ -1,16 +1,29 @@ -For the problem: + For the problem: "We have a lot of images taken from wing-type UAV by camera with at least full hd resolution. Resolution of each photo could be up to 6200*4100 for the whole flight, but for other flight could be FullHd, f.e. Photos are taken and named consecutively within 100 meters distance between each other. -We know only starting GPS coordinates. We need to determine coordinates of centers of each image. And also coordinates of the center of any object on these photos." +We know only starting GPS coordinates. We need to determine coordinates of centers of each image. And also coordinates of the center of any object on these photos. We can use external satellite provider for ground check the existing photos" -check how realistic these acceptance criteria: + with restrictions: -"System should find out GPS of centers of all the photos from the flight within error no more than 100 meters in comparison to the real GPS -System should find out GPS of centers of 70% of the photos from the flight within error no more than 30 meters in comparison to the real GPS" + "Photos are taken by only airplane type UAVs. +Photos are taken by the camera pointing downwards and fixed, but it is not autostabilize +The flying range is restricted by eastern and southern part of Ukraine (To the left of Dnipro river) +The image resolution could be from FullHd to 6252*4168 +Altitude is prefefined and no more than 1km +Flights are done mostly in sunny weather +We can use satellite providers, but we're limited right now to Google Maps, which could be possibly outdated for some regions +Number of photos could be up to 3000, usually in 500-1500 range +During the flight UAV can make sharp turns, so that it is possible that next photo is absolutely different from the previous one (no same objects), but it is rather exception than the rule" -Check how critical is each criteria. Also find out more acceptance criteria for this specific domain. Research impact of each value in acceptance criteria to the whole system quality. Assess acceptable ranges for each value in each acceptance criteria in the state of the art solutions, and propose corrections in form: + check how realistic these acceptance criteria are: -state of the art solutions' value ranges : our value ranges - -Form the new acceptance criteria based on your research. \ No newline at end of file + "- System should find out GPS of centers of all the photos from the flight within error no more than 100 meters in comparison to the real GPS. + - System should find out GPS of centers of 70% of the photos from the flight within error no more than 30 meters in comparison to the real GPS" + + Check how critical is each criteria. Also find out more acceptance criteria for this specific domain. + Research impact of each value in acceptance criteria to the whole system quality. + Assess acceptable ranges for each value in each acceptance criteria in the state of the art solutions, and propose corrections in form: + - state of the art solutions' value ranges : our value ranges + + Form the new acceptance criteria based on your research. \ No newline at end of file