Skip to main content

sparse-to-dense

labeling tool

실행 준비

저장소 클론

# 서드파티 서브모듈들이 포함된 저장소이므로 모두 함께 다운로드
git clone --recursive https://github.com/slink-to-unlock/sparse-to-dense
# 프로젝트 루트로 디렉토리 이동
cd sparse-to-dense

파일 준비

  • source.mov 파일을 프로젝트 루트에 준비
  • 다른 이름의 파일을 실행하고 싶다면 sparse_to_dense/sparse/main.py 파일을 수정할 것.

파이썬 의존성 설치

실행 스크립트

{프로젝트_루트}$ python -m pip install -r requirements.txt

시스템 의존성 설치

  • 서드파티 라이브러리의 의존성인 ffmpeg 설치
  • 서드파티 디렉토리에 video-splitter 설치

실행

레이블러 실행

동영상을 클립으로 분해

  • T를 눌러서 클립으로 분절할 타이밍 명시
  • Q를 눌러서 종료 (하나의 타이밍으로 계산됨)
  • NOTE: MacOS환경에서 동영상이 되감기되지 않으므로 주의
  • NOTE: 동영상이 맨 마지막까지 실행되면 자동으로 하나의 클립으로 인식함

분해된 클립들을 0, 1 태깅

  • 0을 눌러서 0으로 태깅, 1을 눌러서 1로 태깅
  • NOTE: 메타데이터 태깅 과정에서 동일한 작업을 GUI로 실행할 수 있으므로 이 과정을 생략해도 됨.

실행 스크립트

{프로젝트_루트}$ python -m sparse_to_dense.sparse.main

메타데이터 태깅 실행

실행 스크립트

{프로젝트_루트}$ streamlit run sparse_to_dense/app.py

가보자가보자

  • 여기에 나와 있는 하드코딩적 요소들을 제거
  • dense 모드에서 같은 기능이 CLI와 GUI로 모두 제공되는 사용성 해결
    • index 기반으로 json에서 파싱하지 말고 경로를 바탕으로 선택하는 것이 나은 설계
  • sparse 모드와 dense 모드가 잘 어우러지도록 변경
  • Manager 객체들에 함수들이 제멋대로 값을 쓰는 캡슐화 문제 수정
  • Manager 클래스가 너무 많은 권한을 가지고 만능 키처럼 쓰이고 있음
    • 객체의 정보가 파일에 동시에 동기화되는 방식이 너무 원시적임
      • 이 문제가 해결되어야 다음과 같은 상황에 대응 가능
        • 처음에 불러올 비디오가 n개가 되는 경우
        • 레이블링 도중에 다른 raw비디오가 추가되는 경우
    • 이것을 어떻게 수정할 수 있을지에 대한 중장기적인 고민이 필요
  • 환경 이슈를 줄이기 위해 도커로 패킹하여 제공

Metadata

Release files for sparse_to_dense 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sparse_to_dense 0.0.1
File Size Uploaded
sparse_to_dense-0.0.1.tar.gz 26.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sparse_to_dense 0.0.1
File Interpreter ABI Platform
sparse_to_dense-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 52.9 kB

Release files / sparse_to_dense-0.0.1.tar.gz

Download URL sparse_to_dense-0.0.1.tar.gz
Size 26.1 kB
Tags Source
SHA-256 checksum
How to use checksums
268819893fbc67879d7c2fc0a3a494f03e1db12707c7c6703d832555e399edeb
BLAKE2b-256 checksum
How to use checksums
86b852bcc29bd5e5e5c404faa51f89c0888fb5faa0f02be1cfcc2e697c5b9226
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-requests/2.32.3

Release files / sparse_to_dense-0.0.1-py3-none-any.whl

Download URL sparse_to_dense-0.0.1-py3-none-any.whl
Size 26.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a3031e57e60d7645d2e06d9b4c72fe1172366547439bbe5f3609eae6fa1c8cf4
BLAKE2b-256 checksum
How to use checksums
634cae8d3464655b1722311e668af7993ba7b5462d8d8f7a4fce7f2a0fddb39a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-requests/2.32.3

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page