
Կղզու տեղորոշումը երկրաչափությամբ և CUDA ծրագրավորմամբ
OSINT վարժությունը լուծվել է առանց Google Lens-ի. 882 ՄԲ ափագծի տվյալներ, երկրաչափական ֆիլտրերի շղթա և GPU-ում ստուգված 80 միլիոն եռյակ հանգեցրին Միկրոնեզիայում գտնվող Oan հանգստավայրին։
yassa9 բլոգում գրող ծրագրավորողը 2026 թվականի օգոստոսի 16-ին հրապարակել է գրառում այն մասին, թե ինչպես լուծեց բաց աղբյուրների հետախուզության (OSINT) վարժությունը՝ Sofia Santos-ի (Gralhix) համար 004 առաջադրանքը։ Այն պարունակում էր երեք հարց կղզում գտնվող հանգստավայրի լուսանկարի վերաբերյալ՝ հանգստավայրի անունը, կղզու կոորդինատները և տեսախցիկի ուղղությունը։ Հեղինակը հրաժարվել է Google Lens-ից և լուծել է խնդիրը մաթեմատիկայով ու ծրագրավորմամբ։
Մետատվյալներ և երկրաչափական «մատնահետք»
Exiftool-ը հաստատել է, որ պատկերը 736×515 պիքսելանոց WebP ֆայլ է՝ առանց GPS տվյալների և առանց տեսախցիկի մոդելի։ Այդ պատճառով հեղինակը լուսանկարից հանել է երեք ցամաքային զանգվածների երկրաչափությունը՝ P0՝ հանգստավայրի կղզյակը, P1՝ աջ կղզին, P2՝ ձախ առջևի լեռնագագաթով կղզին։ 01_triangle_gui.py գործիքը գրանցել է պիքսելների կոորդինատները և հաշվել եռանկյան կողմերի հարաբերակցություններն ու անկյունները։ Աչքով նշելու անճշտության պատճառով որոնմանը ավելացվել է ±20% հանդուրժողականություն։
Ֆիլտրերի շղթա
Որոնման տարածքը OpenStreetMap-ի գլոբալ ափագծային վեկտորների land-polygons-split-4326 հավաքածուն էր՝ 882 ՄԲ ծավալով։ Առաջին ֆիլտրը թողել է միայն արևադարձային լայնության գոտին՝ −30°-ից 30°, այսինքն՝ 141 131 պոլիգոն։ Տեղական խտության ֆիլտրը հանել է 5 կմ շառավղում տասից ավելի հարևան ունեցող կղզյակները՝ թողնելով 51 576։ 20 կմ-ում առնվազն երկու հարևան չունեցող կետերը հեռացվել են, մնացել է 23 500 կլաստեր, իսկ դրանց ներսում բոլոր եռյակների ստեղծումը տվել է 80 690 777 հավակնորդ եռանկյուն։
Համեմատումը GPU-ում
Յուրաքանչյուր եռյակ մշակվել է առանձին CUDA թելով։ Թելը երեք կետերը դասավորել է ըստ ցամաքի մակերեսի՝ P0-ն որոշելու համար, երկչափ վեկտորական արտադրյալի նշանով նշանակել է P1-ը և P2-ը, ապա ստուգել P0-ի անկյունը, հեռավորությունների հարաբերակցությունը և չափերի միջակայքերը։ 5 169 ՄԲ վիդեոհիշողությամբ NVIDIA GeForce RTX 3050-ի (sm_86) վրա միջուկն աշխատել է 204,1 միլիվայրկյանում. ստուգումն անցել է 158 784 եռյակ, կրկնօրինակներից հետո՝ 8 915։
Բաց ջրի «բաց ուղղանկյուն» ստուգումից մնացել է 948 հավակնորդ, մարջանային կղզյակի կոմպակտության գնահատականը (Polsby-Popper)՝ 213, օվալաձևության ստուգումը՝ 137, իսկ Sentinel-2-ի պատկերներից Element84-ի Earth Search հանրային API-ով հաշվված NDVI բուսականության ստուգումը՝ 66։ Վերջին ստուգումը՝ բարձրության, օգտագործել է Copernicus DEM GLO-30 սալիկները. P0-ն պետք է լինի 50 մետրից ցածր, իսկ տեսախցիկի ±50° դիտման աղեղի վրա՝ 2-20 կմ հեռավորության վրա, ամենաբարձր ռելիեֆը պետք է ընկնի 100-500 մետրի միջակայքում։ Մնացել է 26 հավակնորդ։
Պատասխանը
Վերջնական աղյուսակի ութերորդ գրառումը՝ Միկրոնեզիայի Դաշնային Նահանգներ, համընկել է լուսանկարի հետ։ Հանգստավայրի անունը Oan է, կղզու կոորդինատները՝ 7°21′48.4″ հյուսիսային լայնություն և 151°45′20.7″ արևելյան երկայնություն (7.363444, 151.755750), իսկ տեսախցիկն ուղղված է եղել հյուսիս-արևմուտք՝ մոտ 324.97°։ Կոդը և վերջնական հաշվետվությունը հրապարակված են GitHub-ում։
SiTech — AI-ով հզորացված վեբ մշակում
Ստեղծում ենք արագ ու ժամանակակից կայքեր և AI-ը ներդնում իրական բիզնես գործընթացներում։ Ունե՞ք նախագիծ կամ հարց։ Ուրախ կլինենք օգնել։