1. ์ ํต์ ์ธ ๊ณ ๋์ค๋ฏธํฐ(์๋ ๊ฐ๋๊ณ)์ ํ๊ณ
์ค๋ซ๋์ ์ ํ์ธ๊ณผ ์ธ๋ ์ง๋ฃ์ค์์๋ ํฌ๋ช ํ๋ผ์คํฑ ํํ์ '๊ณ ๋์ค๋ฏธํฐ(Goniometer)'๋ฅผ ์ฌ์ฉํ์ฌ ๋ฌด๋ฆ ๊ฐ๋๋ฅผ ์ธก์ ํด ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ณ ๋์ค๋ฏธํฐ๋ ๋ ์์ผ๋ก ๊ธฐ๊ตฌ๋ฅผ ์ฅ๊ณ ๊ด์ ์ค์ฌ์ถ์ ์ ํํ ๋ฐ์ฐฉ์์ผ์ผ ํ๋ฏ๋ก ํ์๊ฐ ํผ์์ ์ธก์ ํ๊ธฐ๊ฐ ๋งค์ฐ ๊น๋ค๋ก์ฐ๋ฉฐ, ์ธก์ ์์ ์ฃผ๊ด์ ์ธ ์์ผ๊ฐ(์์ฐจ, Parallax Error)์ ๋ฐ๋ผ 5๋~15๋ ์ด์์ ํธ์ฐจ๊ฐ ๋ฐ์ํ๋ ๋จ์ ์ด ์์์ต๋๋ค.
2. ์ปดํจํฐ ๋น์ 3์ (Three-Point) ๊ด์ ๋ฒกํฐ ์ฐ์ฐ ์๋ฆฌ
KneeFlow AI๋ ์ธ์ฒด์ ๊ณจ๊ฒฉ ๋๋๋งํฌ(Skeletal Keypoints) ์ค ๋ค๋ฆฌ์ ์์ง์์ ๊ฒฐ์ ํ๋ 3๊ฐ์ ํด๋ถํ์ ํฌ์ธํธ๋ฅผ ์ค์๊ฐ์ผ๋ก ์ถ์ ํฉ๋๋ค:
Vector BA = (xA - xB, yA - yB)
Vector BC = (xC - xB, yC - yB)
ฮธ = arccos( (Vector BA ยท Vector BC) / (|Vector BA| * |Vector BC|) )
๋ฌด๋ฆ ๊ด์ ์ ๊ผญ์ง์ (B)์ผ๋ก ํ๋ ๋ ๋ฒกํฐ(ํ๋ฒ ์ง ์ถ BA์ ์ ๊ฐ์ด ์ถ BC)์ ๋ด์ (Dot Product)์ ํตํด ์ด๋น 30ํ๋ ์ ์ด์์ผ๋ก ๋ถ๋๋ฝ๊ฒ ์ค์๊ฐ ๋ด๊ฐ์ ์ฐ์ถํฉ๋๋ค.
3. ์๋ฒฝํ ํ๋ผ์ด๋ฒ์: ์จ๋๋ฐ์ด์ค Wasm ์ถ๋ก
๊ธฐ์กด์ ํด๋ผ์ฐ๋ ๊ธฐ๋ฐ AI ์๋ฃจ์ ์ ํ์์ ์นด๋ฉ๋ผ ์์์ ์๋ฒ๋ก ์ ์กํ์ฌ ๋ชจ๋ธ์ ์คํํ ๋ค ๊ฒฐ๊ณผ๋ฅผ ๋๋ ค๋ฐ๋ ๋ฐฉ์์ด์์ต๋๋ค. ์ด๋ ๋ฏผ๊ฐํ ํ์์ ํ๋ถ๋ ์ ์ฒด๊ฐ ์ธ๋ถ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋จ๊ฒ ๋๋ ์ฌ๊ฐํ ํ๋ผ์ด๋ฒ์ ์ํ์ด ์์์ต๋๋ค.
KneeFlow AI์ ์ฐจ๋ณํ๋ ์จ๋๋ฐ์ด์ค(On-Device) ๋ณด์ ์ํคํ ์ฒ:
- ๊ฒฝ๋ํ๋ ํฌ์ฆ ์ ๊ฒฝ๋ง ๋ชจ๋ธ์ด ์น ๋ธ๋ผ์ฐ์ ๋ก๋ฉ ์ ์ฌ์ฉ์์ ๊ธฐ๊ธฐ ๋ฉ๋ชจ๋ฆฌ๋ก 1ํ ๋ค์ด๋ก๋๋ฉ๋๋ค.
- ์นด๋ฉ๋ผ์์ ์ ๋ ฅ๋๋ ๋น๋์ค ์คํธ๋ฆผ์ ๊ธฐ๊ธฐ์ GPU/Wasm ๊ฐ์์ ํตํด ํ์์ ๊ธฐ๊ธฐ ๋ด์์๋ง ์ฆ์ ๊ณ์ฐ๋ฉ๋๋ค.
- ์ฐ์ฐ ํ ๋น๋์ค ํ๋ ์์ ์ฆ์ ๋ฉ๋ชจ๋ฆฌ์์ ์๋ฉธํ๋ฉฐ, ์๋ฒ๋ก๋ ์ค์ง ์ฌ์ฉ์๊ฐ ์ ์ฅ์ ๋๋ฅธ '๊ฐ๋ ์ซ์'๋ง ์ ๋ฌ๋ฉ๋๋ค.
1. Stenum J, et al.: Two-dimensional video-based analysis of human gait using Pose Estimation. PLOS ONE. 2021;16(4):e0249303.
2. Lugrรญs U, et al.: Validation of a video-based motion capture system for gait analysis using smartphone camera technology. Measurement. 2021;179:109477.
3. Cao Z, et al.: Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields. IEEE Trans Pattern Anal Mach Intell. 2021;43(1):172-186.
4. W3C WebAssembly Working Group: WebAssembly Core Specification (W3C Recommendation).
์ง์ ์นด๋ฉ๋ผ๋ฅผ ์ผ๊ณ AI ๊ฐ๋ ์ธก์ ์ ์ฒดํํด๋ณด์ธ์
์ด๋ ํ ํ๋ก๊ทธ๋จ๋ ์ค์นํ ํ์ ์์ด ๋ฐ๋ก ๋ธ๋ผ์ฐ์ ์์ ์๋ํฉ๋๋ค.