8/9 세상에 도전하기 40일차

8/9 세상에 도전하기 40일차

하드웨어를 마무리한 7/25 이후로 2주가 지났다. 약속도 많았고 다른 기회 제안도 몇 개 있었고 열정도 좀 흔들리고 꽉 막혀있다가 돌파구도 찾고 세상의 도파민에도 좀 빠지고 그랬다. 하나하나 복기해보자!

Kiro

7/25 이후로 2주 동안 AI 제어에서 꽉 막혀있었다.

알고리즘, ML, VLM 3가지 방법이 있었는데 알고리즘 -> ML -> VLM -> ML -> 알고리즘으로 진행되었다. 2주 뺑뺑 돌아서 다시 원래대로 돌아왔다. 나선형 성장이었을 것이라다고 믿는 중이다. 위에서 보면 뺑뺑 돌기만 했지만 옆에서 보면 성장한... 보는 각도에 따라 달라지는데 나는 옆에서 보려고 한다.

AI 제어를 하기 위해 7/26부터 7/28까지는 현재 내가 무엇을 모르고 있고, 어떤 state가 있어야 하고, 어떤 방식으로 전환되는지 기술적으로 문제 정의를 하는 시간이었다.

Kiro Building Note 6 (Problem Formulation)
Full Self Page Turning (Non-rigid Object Manipulation) Problem: Automatically turn pages of a physical book from start to end without human intervention. Current Hardware Structure 1. Overhead Camera 1. Objective: Observe the entire page-turning process, detect current page and arm positions. 2. Behavior: Continuously records video (640x480 resolution) at 20fps.

그 이후 처음으로 시도해본 방법은 알고리즘(canny + contour)이었다. 암의 위치를 찾는 알고리즘이었는데 생각보다 잘 되지 않았다. 7/29

그 다음 ML로 건너가서 암을 찾을 수 있는 segmentation 모델들을 찾아보고 추론을 해봤는데 다 성능이 아쉬웠다. 7/30

그 다음으로 결국 VLM으로 넘어가서 이미지 하나 주고 현재의 state를 추론하게 하는 것을 시도해봤는데 2-3일에 걸친 프롬프트 노가다 이후 포기했다. LLM은 똑똑하지만 VLM은 아직 갈 길이 멀다. 팔이 왼쪽에 있는지 오른쪽에 있는지 물어볼 때마다 달라진다. 이 때 secondary camera도 사서 붙이고, tactile 센서도 샀다. 7/31~8/3

다시 ML로 복귀... Object Detection (OWL-ViT, YOLOv9), Semantic Segmentation (SAM, SAM2, MMSegmentation, EVF-SAM, Florence-2), Keypoint Detection (YOLOv11)을 시도해봤다. 이 근본 ML태스크를 오랜만에 다시 하게 됐는데 LLM과 결합한 신기한 모델들이 많이 생겼다. OWL-ViT는 텍스트 기반 OD이고, EVF-SAM, Florence-2도 텍스트 기반 Segmentation이었다. 이런 것들에 기대를 좀 했는데 예상보다 현저히 느린 추론 시간과 썩 만족스럽지 않은 성능에 포기를 했다. 8/4~8/5

이렇게 다시 8월 6일 알고리즘으로 돌아왔다. 7/29 때와 다른 점은 이제 더 이상 물러날 곳이 없다는 것이었다. 여기에서 물러나면 이제 꼼짝없이 데이터 하나하나 다 라벨링하고 트레이닝해야 했다. 결국 아래처럼 corner detection + optical flow + image diff 3개 알고리즘 결합으로 현재의 state를 판단하기에 충분한 정보를 얻어냈다. 남은 건 디테일한 상황 하나하나에서 구체적인 알고리즘을 짜는 일인데 이건 이제 하기만 하면 된다.

0:00
/0:10

7/29 때와 무엇이 달라졌냐고 하면!

제일 큰 건 시간축을 고려했다는 것이다. 이미지 하나만으로는 절대 인식이 안되던 암들이 행동하기 전 이미지와 행동한 이미지의 차이를 토대로는 인식되기 시작했다. 또한 edge보다 detect가 쉬운 corner로 detect한 것도 한 몫했다.

optical flow는 detect한 corner가 어디로 이동했는지 찾아내는 알고리즘이다.

여러 실험들을 거쳐, corner detection은 6개의 방법 중 shi tomasi 방법을 택했고, optical flow는 5개의 방법 중 lucas kanade 방법을 택했다. 실행 시간, 정확도를 고려하여 선택했다.

corner detection algorithm test

이제 state를 추정하기에 충분한 정보가 모여 이제 짜기만 하면 된다. 지금까지도 어느 정도 했고 내일이면 진짜진짜 AI 제어가 끝나지 않을까!!! 기대 중이다.


힘들 때면 네이버 카페 들어가서 키로를 기다리고 있는 40명의 고객들의 모습들을 보며 힘낸다. 나오면 바로 사겠다 꼭 연락달라 이런 분들 정말 많고, 이벤트 기간 놓쳐서 땅에 드러누워 배노놓고 발구르며 울고 싶다는 분도 있다ㅎㅎ 후딱 만들어야지!!

내일 꼭 다 마무리짓고! 일욜은 좀 쉬고! 책 처음부터 끝까지 쭉 돌려보면서 더 고도화하는 과정을 다음주 월, 화, 수 진행해볼 예정이다. v0.3만 거의 3주 하고 있는데... 쩝 아쉽지만 처음부터 너무 말도 안되는 타이트한 일정으로 잡은 것 같기도 하다. 그렇게 하고 일주일 정도 v1.0 준비하면서 11대 생산 준비하고 생산하고! 20일까지 첫 제품 하나 만들고 20일부터 선착순 입금 11명 받아서 5만원으로 쭉쭉 만드는 대로 바로바로 납품해서 8월 목표 꼭 달성하자!

운동

스쿼트 90x10 성공! 풀업 12개 성공!

오늘 벤치 80 해봤는데 4개밖에 못했다ㅠㅠ 열심히 해야지. 스쿼트 100x10과 풀업 13개는 할 수 있을 것 같고, 벤치랑 덤벨숄더프레스가 현재 수준을 간신히 하는 수준이라 빡세게 해야 한다. 무산소 한다고 요즘 유산소를 등한시했다. 8월에 1번했다. 내일은 진짜 무산소하고 런닝 딱 한바퀴해야지.

12일에 테니스 두 탕 칠거다. 다 이겨줘야지

기타

친구한테서 멀티이펙터를 빌렸다. 오늘 좀 해봤는데 톤이 넘 이뻐서 상당히 마음에 든다. Sweet Child O' Mine 이거 연습 좀 하고 다음주에 앰프 본가에서 가져오고 톤 맞춰서 최대한 비슷한 느낌 내봐야겠다. 아 신난다!!!

확실히 최근 2주는 몰입도가 떨어졌다. 문라이트 한창 때랑 비교하면 턱없이 부족하다. 여러 이유가 있는 것 같은데 일하는 공간과 사는 공간이 분리 안되는 점, 업무 시간이 정해져 있지 않은 점, 같이 고민할 사람이 없는 점 (이라고 하기엔 사실 주변 친구 5명이나 도와주긴 했다 감사한 친구들), 눈에 띄는 성과가 안 나는 점 등등이다. 내 꿈을, 그리고 키로가 바꿔나갈 미래를 아침마다 햇살 맞으며 더 상상하고 구체화해야지. 나의 1분1초를 훨씬 더 값지게 생각하자.

테라로사에서 원두 하나를 샀다. 향이 진짜 좋다.

아 그리고 제일 중요한 거!

군대 전까지 키로 목표 10,000대로 변경했다. 8월 10대, 9월 100대, 10월 1,000대, 11월 10,000대 간다. 딱 십억 매출 내고 군대 간다! 가보자고