본문으로 건너뛰기

Vision AI를 활용한 창고 랙 점유율 실시간 모니터링 및 용량 계획

Claude 3.5 Sonnet과 Roboflow Workflows를 결합하여 창고 랙의 슬롯과 팔레트를 감지하고 실시간 점유 상태를 데이터화하는 자동화 시스템 구축 가이드.

섹션별 상세

01
창고 랙 모니터링의 핵심은 랙 슬롯(Rack Slot)과 팔레트(Pallet)를 별개의 객체로 정확히 인식하는 것이다. 단순히 점유 여부를 한 번에 판단하는 대신, 고성능 VLM인 Claude 모델을 사용하여 모든 가시적인 슬롯과 팔레트의 위치를 바운딩 박스로 먼저 추출한다. 이 방식은 모델이 장면의 기하학적 구조를 명확히 이해하게 하여 추후 논리적 판단의 정확도를 높인다.
02
객체 감지 단계에서는 비어 있는 슬롯까지 포함하여 모든 랙 구조를 파악하도록 프롬프트를 구성한다. 팔레트가 없는 공간도 유효한 저장 단위로 인식하게 하여, 이후 단계에서 '비어 있음' 상태를 확정할 수 있는 근거를 마련한다. 이는 단순히 물체가 있는 곳만 찾는 기존 방식보다 창고 가용 용량을 계산하는 데 훨씬 유리하다.
text
You are an object detection system for warehouse racks. Detect and localize every rack_slot visible in the image, including both occupied and empty slots. A rack_slot is a fixed rectangular storage space defined by the rack beams and uprights, and it must be detected even if it contains no pallet, box, or object. Do not skip empty slots. Also detect pallets separately.

랙 슬롯과 팔레트를 각각 감지하기 위한 Claude VLM 객체 탐지 프롬프트

창고 랙의 원본 이미지와 팔레트 및 슬롯이 감지된 어노테이션 이미지의 비교
Screenshot원본 이미지에서 비어 있는 슬롯을 포함하여 모든 랙 구조와 팔레트가 바운딩 박스로 정확히 식별됨을 보여준다. 특히 하단 중앙의 빈 슬롯이 'rack_slot'으로 정상 감지되는 것이 핵심이다.
Claude VLM 블록의 객체 탐지 작업 설정 및 프롬프트 구성 화면
ScreenshotAnthropic Claude 모델을 객체 탐지(object-detection) 모드로 설정하고, 랙 슬롯과 팔레트를 구분하여 감지하도록 지시하는 구체적인 프롬프트 설정을 보여준다.
03
감지된 데이터는 'VLM as Detector' 블록을 통해 정형화된 좌표 데이터로 변환되며, 이후 시각화 블록을 거쳐 검증 과정을 거친다. 바운딩 박스 오버레이를 통해 모델이 랙 구조와 물체를 올바르게 정렬했는지 직관적으로 확인한다. 이 시각적 피드백은 시스템 배포 전 모델의 성능을 튜닝하고 신뢰성을 확보하는 데 필수적이다.
Roboflow Workflows에서 구성된 전체 창고 용량 모니터링 파이프라인 구조
Diagram입력 이미지부터 Claude VLM을 통한 감지, 시각화, 논리 추론, JSON 파싱으로 이어지는 전체 워크플로우 단계를 시각화한다. 각 블록 간의 데이터 흐름을 한눈에 파악할 수 있다.
VLM의 출력을 정규화된 감지 데이터로 변환하는 VLM as Detector 블록 설정
ScreenshotVLM이 생성한 텍스트 기반 응답을 시스템이 읽을 수 있는 바운딩 박스 좌표와 클래스 라벨로 변환하는 과정을 설정하는 화면이다. 데이터 정형화의 핵심 단계를 설명한다.
04
최종 추론 단계에서는 두 번째 VLM 블록이 감지된 슬롯과 팔레트의 공간적 관계를 논리적으로 분석한다. 팔레트의 중심점이 특정 슬롯의 바운딩 박스 내부에 위치하는지를 계산하여 'occupied' 또는 'empty' 상태를 결정하며, 결과는 엄격한 JSON 스키마에 맞춰 출력한다. 모델이 직접 점유 여부를 찍는 것이 아니라 기하학적 규칙에 기반해 판단하므로 결과의 일관성이 보장된다.
json
{ "output_schema": "{\"type\":\"object\",\"properties\":{\"bay_id\":{\"type\":\"string\"},\"slots\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"slot_id\":{\"type\":\"string\"},\"occupancy\":{\"type\":\"string\",\"enum\":[\"occupied\",\"empty\"]}},\"required\":[\"slot_id\",\"occupancy\"]}},\"required\":[\"bay_id\",\"slots\"]}" }

점유 상태 추론 결과를 정형화된 데이터로 받기 위한 JSON 스키마 설정

05
주기적인 이미지 스냅샷을 처리하도록 설계되어 연속적인 비디오 스트림 없이도 효율적인 운영이 가능하다. 대규모 창고 환경에서는 각 베이(Bay)별로 파라미터화하여 확장할 수 있으며, WMS와의 연동을 통해 실시간 재고 보충 및 공간 최적화 알림을 자동화한다. 이는 인적 오류를 줄이고 창고 회전율을 극대화하는 결과로 이어진다.
json
[ { "output_1": { "bay_id": "BAY-001", "slots": [ { "slot_id": "slot_1", "occupancy": "occupied" }, { "slot_id": "slot_11", "occupancy": "empty" } ], "error_status": false } } ]

워크플로우 실행 후 출력되는 최종 점유 상태 JSON 데이터 예시

용어 해설

시각 언어 모델(VLM)
이미지와 텍스트를 동시에 이해하고 처리할 수 있는 멀티모달 AI 모델이다. 시각적 정보를 텍스트로 설명하거나 논리적 추론을 수행하는 데 사용되며, 본 아티클에서는 랙 슬롯과 팔레트의 관계를 분석하는 핵심 엔진 역할을 한다.
경계 상자(Bounding Box)
이미지 내 특정 객체의 위치와 크기를 사각형 좌표로 나타낸 것이다. 객체 탐지 모델이 사물의 위치를 식별할 때 사용하는 표준 출력 형식으로, 슬롯과 팔레트의 공간적 겹침을 계산하는 기초 데이터가 된다.
JSON 스키마(JSON Schema)
JSON 데이터의 구조와 데이터 타입을 정의하는 명세이다. AI 모델이 자유로운 텍스트 대신 정해진 형식에 맞춰 데이터를 출력하도록 강제하여, 외부 시스템과의 데이터 연동 시 오류를 방지하고 자동화를 가능하게 한다.
로보플로우 워크플로우(Roboflow Workflows)
복잡한 컴퓨터 비전 파이프라인을 시각적인 블록 형태로 설계하고 배포할 수 있는 플랫폼이다. 모델 호출, 데이터 변환, 시각화 등의 단계를 코딩 없이 연결하여 실전용 AI 애플리케이션을 빠르게 구축할 수 있게 돕는다.
객체 탐지(Object Detection)
이미지 내에서 특정 사물을 찾아내고 그 종류와 위치를 식별하는 기술이다. 본 워크플로우에서는 랙의 물리적 구조인 슬롯과 그 안에 담긴 팔레트를 각각 독립적으로 찾아내는 첫 번째 기술적 단계로 활용된다.

기술

  • Claude 3.5 Sonnet
  • Roboflow Workflows
  • Python
  • JSON Parser

활용 사례

  • 실시간 창고 랙 점유율 모니터링
  • 자동 재고 보충 알림 시스템
  • 창고 공간 최적화 및 용량 계획
AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 01. 30.수집 2026. 02. 21.출처 타입 RSS

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.