Skip to content
View 8rulerstar's full-sized avatar

Block or report 8rulerstar

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please donโ€™t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this userโ€™s behavior. Learn more about reporting abuse.

Report abuse
8rulerstar/README.md

Hi, I'm Byungkun Jang ๐Ÿ‘‹

ML/CV engineer (new grad ยท Seoul ยท open to remote). I find and diagnose measurement problems in pose-estimation tooling.

  • 20 merged PRs in open source, including Ultralytics and Roboflow supervision
  • Wrote the first version of supervision's COCO keypoint mAP metric, shipped in 0.31.0
  • Author of poseaudit and Epokio (both on PyPI)

๐Ÿ“ง bkbkjang@gmail.com ยท ๐ŸŽฎ itch.io

๐Ÿ‡ฐ๐Ÿ‡ท ํ•œ๊ตญ์–ด ์š”์•ฝ
  • ์ „ ์„ธ๊ณ„์—์„œ ๋„๋ฆฌ ์“ฐ๋Š” AI ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ YOLO(Ultralytics)์™€ Roboflow supervision์— PR์ด ๋จธ์ง€๋์Šต๋‹ˆ๋‹ค. (์™ธ๋ถ€ ์ €์žฅ์†Œ ๋จธ์ง€ 20๊ฑด)
  • YOLO์˜ ์ž์„ธ ์ธ์‹ ์ฑ„์  ์˜ค๋ฅ˜๋ฅผ ์ฐพ์•„ pycocotools์™€ ๋น„๊ตํ•ด ์žฌํ˜„ํ–ˆ๊ณ , ๋ฉ”์ธํ…Œ์ด๋„ˆ๊ฐ€ ์ด๋ฅผ ๋ฐ›์•„ ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. COCO ๋ณ€ํ™˜ ๋ฐ์ดํ„ฐ์—์„œ ์ ์ˆ˜๊ฐ€ ์‹ค์ œ๋ณด๋‹ค ๋‚ฎ๊ฒŒ ๋‚˜์˜ค๋˜ ๋ฌธ์ œ์˜€์Šต๋‹ˆ๋‹ค. (๊ณต์‹ COCO pose ์ ์ˆ˜๋Š” ์˜ํ–ฅ ์—†์Œ)
  • ์ž์„ธ ์ธ์‹ ์ธก์ •๊ฐ’์„ ์ ๊ฒ€ํ•˜๋Š” poseaudit, ๋ชจ๋ธ ํ•™์Šต์ด ๋ฉˆ์ถ”๋ฉด ํœด๋Œ€ํฐ์œผ๋กœ ์•Œ๋ ค์ฃผ๋Š” Epokio๋ฅผ ๋งŒ๋“ค์–ด ๊ณต๊ฐœ ๋ฐฐํฌํ–ˆ์Šต๋‹ˆ๋‹ค.

Highlights: pose estimation evaluation

Ultralytics (YOLO) ยท #26564, issue #26563

  • Problem: convert_coco(use_keypoints=True) kept people with no labelled keypoints, so pose validation counted them as targets and under-reported pose mAP. The official COCO pose numbers were unaffected; it hit data converted with convert_coco and custom labels with fully occluded people.
  • My part: found and reproduced it against pycocotools, and proposed a validator-side fix (yolo11n-pose on a 200-image COCO val2017 sample: pose mAP50-95 0.341 โ†’ 0.486).
  • Result: the maintainers fixed it at the source with a one-line change in the converter instead. With their fix, they measured yolo26n-pose on my 200-image sample going from 0.347 to 0.576, matching pycocotools.

supervision (Roboflow) ยท #2687

  • My part: wrote the initial sv.metrics.KeyPointMeanAveragePrecision (COCO keypoint mAP using OKS) and pycocotools parity tests; on 200 COCO val2017 images, AP, AP50, AP75, APm and APl matched pycocotools within 3e-9.
  • Result: the maintainer substantially extended it before release. It shipped as one of the headline features of 0.31.0.
  • Earlier: fixed from_yolo reading pose labels as polygons (#2655), later extended by the maintainer.

Projects

poseaudit ยท Python ยท PyPI
Checks how far angles and lengths computed from pose keypoints disagree with the labels, the way a measuring device is validated (bias, limits of agreement, ICC). On 322 left elbows from 200 COCO val2017 images, YOLO11n-pose disagrees with the labels by 15ยฐ or more on 58% of small arms (under 30 px) vs 26% of large ones (over 60 px). Much of that is label noise: the labels alone would put 30โ€“44% of small arms and 17โ€“31% of large ones off by 15ยฐ or more.

poseaudit: COCO label and yolo11n-pose elbow angles on three photos, then the share of elbows off by 15ยฐ or more by arm size
Photos: COCO val2017, CC BY 4.0

Epokio ยท Python ยท PyPI
Sends a phone alert when an ML training run stalls, hits NaN or finishes, by reading the logs it already writes (Ultralytics, Hugging Face, Lightning, Keras, TensorBoard). No code changes, no account.

Epokio: a training run stalls, the web page marks it Stalled and the phone gets an alert

lidtilt ยท Python
Reads the MacBook lid angle sensor to remove the lid's tilt from webcam head pitch.

lidtilt: as the lid moves, raw head pitch follows it while the corrected pitch stays flat
Stella Ball ยท browser game
A small browser game. Play on itch.io โ†’

Stella Ball gameplay: a shot chains through the party and defeats the boss

More open source (ML)

  • ultralytics#26651: SAM prompts for a folder or video reached only the first image. I made them apply to the whole source. In review the maintainer caught that my version modified the caller's arrays in place; I fixed it, and they moved the forwarding to the streaming entry point.
  • ultralytics#26635: every DataLoader worker drew the same Albumentations augmentations. I traced it and proposed reseeding per worker; the maintainer reworked the final commit.
  • sktime#11233: re-enabled tests for two estimators that were skipped by mistake.

All merged pull requests โ†’

Pinned Loading

  1. poseaudit poseaudit Public

    Audit how far off the angles, tilts and lengths a pose model measures are

    Python

  2. epokio epokio Public

    Phone alerts when an ML training run stalls, hits NaN or finishes, from the logs it already writes. No code changes, no account.

    Python 1

  3. lidtilt lidtilt Public

    Subtract the MacBook lid tilt from webcam head-pitch estimates using the lid angle sensor

    Python