Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SurgeryLive

Live surgical video from an edge device to a remote viewer. The edge client runs DINOv2-based inner/outer scene detection, optionally blurs frames (anonymize), and sends JPEGs over TCP. SSH forwards that TCP port to a Unix socket on the server, which displays the stream.

edge_device  --TCP 127.0.0.1:12345-->  SSH LocalForward  -->  server Unix socket

Layout

Path Role
edge_device/ Client simulator (OpenVINO INT8 or native PyTorch). See edge_device/README.md.
server/ Unix-socket receiver GUI, plus optional ONNX export / INT8 quantization. See server/README.md.

Each of those folders is its own uv project. This root project is the CUDA environment used to convert and quantize the model.

SSH tunnel

On the edge machine, add a block like this to ~/.ssh/config. Replace the placeholders; LocalForward must match SOCKET_PATH in server/get_video_v2.py.

Host Host
    User YourUserName
    HostName HostName
    IdentityFile PATH_TO_YOUR_PRIVATE_KEY
    LocalForward 12345 PATH_TO_THE_SOCKET_IN_REMOTE_SERVER
    ForwardAgent no
    StreamLocalBindUnlink yes

Then connect (ssh Host) and leave the session open while streaming.

Launch order

  1. On the server host, set SOCKET_PATH in server/get_video_v2.py, then:
cd server
uv run ./get_video_v2.py
  1. On the edge machine, open the SSH tunnel above.
  2. On the edge machine:
cd edge_device
uv run .\secure_live_simulator.py

Use uv run .\secure_live_simulator_native_torch.py instead if you want native PyTorch (no INT8 OpenVINO model). Details, GUI controls, and model-conversion steps are in the folder READMEs.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages