Skip to main content

High-performance DAS visualization and analysis tool

Project description

FiLark

FiLark (Fiber Lark) — a lightweight, high-performance framework for streaming-first Big Data visualization and analysis in Distributed Fiber Optic Sensing (DAS).

In fiber optic sensing, the sheer data volume quickly overwhelms traditional workflows. FiLark is built to feel “swift and light”—enabling you to navigate, inspect, and annotate massive DAS arrays with deterministic control and low-latency rendering.

FiLark bridges raw storage and visual insight, focusing on:

  • High-Efficiency Visualization: VisPy (OpenGL) rendering for fluid zoom/pan over huge arrays.
  • Streaming as a First-Class Citizen: designed around incremental data feeds, scheduling, and real-time playback.

⚠️ Project Status (Early Version)

FiLark is in an early-stage / experimental phase. APIs and GUI behaviors may change, and some features are still being stabilized.
If you encounter issues, please open an issue with logs + a minimal reproduction.

That said, streaming is the core design point: most GUI decisions (controls, scheduler behavior, auto-scroll) are implemented to stay deterministic under continuous incoming data.


🚀 Getting Started

Installation

Install via PyPI:

pip install filark

Install in editable mode for development:

git clone https://github.com/JintaoLee-Roger/filark.git
cd filark
pip install -e . 

Fast Usage

Run:

filark

🖥️ GUI & Visualization Controls

FiLark’s GUI emphasizes deterministic keyboard control. The goal is to keep navigation predictable even when data is streaming continuously.

Deterministic Camera / Scheduler Navigation

  • Left / Right Pan X via camera → propagates to scheduler X streaming (camera → scheduler → streaming)

  • Up / Down Pan Y via scheduler (deterministic)

    • optional camera Y sync (if enabled)
  • Y / Shift + Y scale_y (zoom in/out Y)

  • X / Shift + X scale_x (zoom in/out X)


⏱️ Realtime Auto-Scroll (StreamingCanvas)

A simplified realtime auto-scroll mixin is included for StreamingCanvas, featuring two-level statistics and a small demo benchmark mode.

Keys

  • R : toggle realtime auto-scroll
  • S : stop
  • 1..8 : set fs (samples/sec)
  • + / = : speed up
  • - / _ : speed down
  • P : print DEBUG stats
  • Shift + P : print SHOWCASE stats (for demos / papers)
  • B : run a short benchmark (push speed up to a strong cap, report max sustained throughput)

This mode is designed to validate that the rendering + scheduling loop can sustain high-throughput streaming while keeping interactions responsive.


✍️ Annotation

FiLark provides lightweight annotation tools intended for rapid inspection and labeling during exploration.

Add / Edit Shapes

  • Hold Ctrl to add:

    • BBox (bounding boxes)
    • Polyline (multi-point line)

Undo

  • Ctrl + Z Undo the last polyline point (step-wise rollback while drawing)

Annotation UX is still evolving in this early version. Expect changes as the labeling workflow becomes more feature-complete.


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

filark-0.0.1-py3-none-any.whl (76.8 kB view details)

Uploaded Python 3

File details

Details for the file filark-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: filark-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 76.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.0 CPython/3.12.8

File hashes

Hashes for filark-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1ad55eaafb6d38ff50e84e8630ec7f18a89be8ee3bb10fd95ae641f6a07fdd6a
MD5 72e62fe9c7b32d9d9a36264f3185e2de
BLAKE2b-256 01380e3361d7c9abbb23cc7584676afa28d5ef052fbca7658ec81c5433697b9d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page