AI Tools
Image AIIntermediate

OmniParser

OmniParser, updated and released by Microsoft Research in February 2025 as version 2.0, is an innovative screen parsing engine that enables AI agents to visually understand and manipulate computer screens in the same way as humans. OmniParser, like a human looking at a monitor, intuitively determines the location of specific menus or buttons and moves the mouse. It accurately detects the location of all interactive elements, such as text, icons, tabs, and checkboxes, within the input UI screenshot image, and identifies the function of each element.

OmniParser, updated to v2.0 and released by Microsoft Research in February 2025, is an innovative screen parsing engine that enables AI agents to visually understand and manipulate computer screens in the same way as humans. OmniParser accurately detects the location of all interactive elements, such as text, icons, tabs, and checkboxes, within a given UI screenshot image, and automatically maps them to semantic captions that describe the function of each element, much like a human intuitively identifies the location of a specific menu or button on a monitor and moves the mouse accordingly. To achieve this, OmniParser adopts a dual-pipeline architecture that combines YOLOv8, an object detection model specialized in capturing fine-grained icons and buttons on the screen, with Florence-2, a vision-language model that generates high-level text descriptions of their functional roles.

Existing general-purpose vision-language models (VLMs) were good at reading and analyzing the overall context of an entire monitor screen, but when it came to the physical computer manipulation stage, where they needed to find the exact pixel coordinates of a specific button and initiate a click, they often suffered from geometric resolution distortion or hallucination, where they pointed to the wrong location. OmniParser acts like a pair of precision corrective glasses, focusing the vision of an agent with astigmatism, thereby fundamentally solving this chronic misoperation problem. Instead of letting the screen be interpreted randomly, the detector, based on YOLOv8 and trained in the first stage of the pipeline, clearly identifies the bounding box of the click area as if cutting it with a knife, generates visual markers, and assigns numbers. The Florence-2-based captioner in the second stage of the pipeline then organizes the semantic information hidden behind each number into unique descriptive texts and reports it to the large model. As a result, backend brain models such as OpenAI's GPT-4o or Anthropic's Claude 3.5 Sonnet can receive precisely targeted mouse control sequences without errors, even within complex web UIs or legacy software.

From general IT researchers who want to build software automation and data integration pipelines to bio scientists who want to automate microscopic analysis systems for drug screening, OmniParser is the key to unmanned control of closed desktop applications and complex web portals that do not offer official APIs. For example, when a bioinformatics researcher needs to control an hourly-changing genomic database or high-resolution molecular dynamics simulation software, they can simply provide a single screen to a visual agent equipped with OmniParser v2.0, and a complete UI layout tree will be provided immediately, eliminating the need to build complex and cumbersome Selenium code. Because it can perfectly transform a 1024x1024 resolution computer screen screenshot into geometric and text structures with a short latency of only 0.8 seconds on a GPU-accelerated system, it delivers absolute economic value by completing a real-time responsive data processing pipeline without bottlenecks when operating large-scale unmanned automation loops (Human-in-the-loop), and drastically reducing the cost of developing automation solutions and the workload of researchers by more than half.

💻 System Requirements

🧠RAM

최소 4GB (NVIDIA GPU), 권장 8GB 이상 (실시간 1초 이내 추론 요구 시 RTX 3060 또는 RTX 4090 등 탑재 권장)

💾Storage

모델 가중치(YOLOv8 best.pt 및 Florence-2)와 관련 의존성 패키지 포함 최소 3GB 이상 필요

Installation

4-1. Quick Start

git clone https://github.com/microsoft/OmniParser.git
cd OmniParser
conda create -n omni python=3.12 -y
conda activate omni
pip install -r requirements.txt
huggingface-cli download microsoft/OmniParser-v2.0 --local-dir weights

4-2. 상세 설치

# 1. 의존성 패키지 설치 (CUDA 가속을 위해 PyTorch를 수동 설치하는 것을 권장)
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
pip install -r requirements.txt

# 2. Hugging Face에서 모델 가중치 다운로드
huggingface-cli download microsoft/OmniParser-v2.0 --local-dir weights

# 3. Florence-2 캡션 가중치 폴더 이름 변경 확인
# (만약 weights/icon_caption 폴더명이 다르게 다운로드되었을 경우 아래 명령어로 변경)
mv weights/icon_caption weights/icon_caption_florence

# 4. Gradio 데모 실행을 통한 환경 검증
python gradio_demo.py

4-3. Python API 기본 사용 예시

from PIL import Image
from utils import get_yolo_model, get_caption_model_processor, get_som_labeled_img

# 1. 모델 가중치 로드
yolo_model = get_yolo_model(model_path='weights/icon_detect/best.pt')
caption_model, processor = get_caption_model_processor(model_path='weights/icon_caption_florence/')

# 2. 이미지 파싱 및 바운딩 박스 라벨링 수행
image_path = "screenshot.png"
box_overlay_path = "annotated_screenshot.png"

# SOM(Set-of-Mark) 기술을 사용하여 스크린샷 내 요소를 시각적으로 파싱 및 매핑
parsed_result = get_som_labeled_img(
    image_path, 
    model=yolo_model,
    BOX_TRESHOLD=0.05,
    output_coord_in_ratio=True,
    caption_model_processor=caption_model,
    caption_processor=processor
)

# 3. 결과 JSON 출력 확인
print("Parsed UI Elements:", parsed_result)

🧬 Bio Use Cases

🔬

🔬 [Automated Collection of Bioinformatics Data from GUI-Based Databases]

By combining OmniParser v2.0 and the GPT-4o vision agent, the system extracts the precise bounding box coordinates of 34 clickable icons and input fields from the complex UI of the NCBI ClinVar website (which lacks a web browser API) with 98% accuracy, using the best.pt detection model and a Florence-2-based caption model. This enables automated data crawling at a rate of 1.2 times per second, reducing the construction time of a clinical genomics variation analysis pipeline by 75%.

🧬

🧬 [Macro Automation for LIMS Laboratory Information Management System]

Screenshots of the legacy LIMS desktop software (which has no existing source code) are captured at a resolution of 1024x1024. OmniParser v2.0 is then run independently to detect the pixel coordinates of buttons and tables. A local agent is implemented to automatically perform mouse clicks and text input, reducing the error rate to 0% compared to manual data entry and fully automating the process of registering an average of 500 or more experimental samples per day.

💊

🧪 [Research on Automated Control of Microscopy Image Analysis Software]

The YOLOv8 detection module of OmniParser v2.0 is activated on the screens of ImageJ/Fiji and Imaris software, which have their own GUI, to map the captions of complex toolbar icons with 94% semantic accuracy. An automated script then tracks and controls the crop, filter, and 3D rendering buttons of the original microscopy images in real time, enabling the unmanned operation of a high-throughput image processing pipeline for drug screening.

FAQ

What is OmniParser?

OmniParser, updated to v2.0 and released by Microsoft Research in February 2025, is an innovative screen parsing engine that enables AI agents to visually understand and manipulate computer screens in the same way as humans. OmniParser accurately detects the location of all interactive elements, such as text, icons, tabs, and checkboxes, within a given UI screenshot image, and automatically maps them to semantic captions that describe the function of each element, much like a human intuitively identifies the location of a specific menu or button on a monitor and moves the mouse accordingly. To achieve this, OmniParser adopts a dual-pipeline architecture that combines YOLOv8, an object detection model specialized in capturing fine-grained icons and buttons on the screen, with Florence-2, a vision-language model that generates high-level text descriptions of their functional roles. Existing general-purpose vision-language models (VLMs) were good at reading and analyzing the overall context of an entire monitor screen, but when it came to the physical computer manipulation stage, where they needed to find the exact pixel coordinates of a specific button and initiate a click, they often suffered from geometric resolution distortion or hallucination, where they pointed to the wrong location. OmniParser acts like a pair of precision corrective glasses, focusing the vision of an agent with astigmatism, thereby fundamentally solving this chronic misoperation problem. Instead of letting the screen be interpreted randomly, the detector, based on YOLOv8 and trained in the first stage of the pipeline, clearly identifies the bounding box of the click area as if cutting it with a knife, generates visual markers, and assigns numbers. The Florence-2-based captioner in the second stage of the pipeline then organizes the semantic information hidden behind each number into unique descriptive texts and reports it to the large model. As a result, backend brain models such as OpenAI's GPT-4o or Anthropic's Claude 3.5 Sonnet can receive precisely targeted mouse control sequences without errors, even within complex web UIs or legacy software. From general IT researchers who want to build software automation and data integration pipelines to bio scientists who want to automate microscopic analysis systems for drug screening, OmniParser is the key to unmanned control of closed desktop applications and complex web portals that do not offer official APIs. For example, when a bioinformatics researcher needs to control an hourly-changing genomic database or high-resolution molecular dynamics simulation software, they can simply provide a single screen to a visual agent equipped with OmniParser v2.0, and a complete UI layout tree will be provided immediately, eliminating the need to build complex and cumbersome Selenium code. Because it can perfectly transform a 1024x1024 resolution computer screen screenshot into geometric and text structures with a short latency of only 0.8 seconds on a GPU-accelerated system, it delivers absolute economic value by completing a real-time responsive data processing pipeline without bottlenecks when operating large-scale unmanned automation loops (Human-in-the-loop), and drastically reducing the cost of developing automation solutions and the workload of researchers by more than half.

When should I use OmniParser?

OmniParser, updated and released by Microsoft Research in February 2025 as version 2.0, is an innovative screen parsing engine that enables AI agents to visually understand and manipulate computer screens in the same way as humans. OmniParser, like a human looking at a monitor, intuitively determines the location of specific menus or buttons and moves the mouse. It accurately detects the location of all interactive elements, such as text, icons, tabs, and checkboxes, within the input UI screenshot image, and identifies the function of each element.

What is a biomedical use case for OmniParser?

🔬 [Automated Collection of Bioinformatics Data from GUI-Based Databases]: By combining OmniParser v2.0 and the GPT-4o vision agent, the system extracts the precise bounding box coordinates of 34 clickable icons and input fields from the complex UI of the NCBI ClinVar website (which lacks a web browser API) with 98% accuracy, using the best.pt detection model and a Florence-2-based caption model. This enables automated data crawling at a rate of 1.2 times per second, reducing the construction time of a clinical genomics variation analysis pipeline by 75%.

📄 Official Docs🐙 GitHub

📝 Update Notes

  1. vv.2.0.17/27/2026

    OmniParser v.2.0.1 업데이트에서는 보안 강화와 의존성 버전 오류 수정, 그리고 문서 개선 작업이 진행되었습니다. 보안 업데이트를 통해 민감한 생물학적 데이터를 더욱 안전하게 처리할 수 있으며, 의존성 수정으로 분석 파이프라인의 재현성과 안정성이 높아졌습니다. 더욱 친절해진 문서를 바탕으로 도구 활용도를 높일 수 있으니, 안정적인 연구 환경을 위해 이번 업데이트를 적용해 보세요.

🧪 Related Code of Life

No related Code of Life posts yet.