Coder Social home page Coder Social logo

xd404015353 / openremoteslide Goto Github PK

View Code? Open in Web Editor NEW

This project forked from huangch/openremoteslide

0.0 0.0 0.0 3.83 MB

OpenRemoteSlide: An Extension of OpenSlide for Remote Access of Whole Slide Images

License: Other

Makefile 0.77% C 88.17% M4 1.77% Shell 0.10% Python 8.44% MATLAB 0.62% Objective-C 0.13%

openremoteslide's Introduction

OpenRemoteSlide: An Extension of OpenSlide for Remote Access of Whole Slide Images

huangch

What is this?

This library is an extension of OpenSlide (you probably should not be here if you don't know what it is). OpenRemoteSlide is just similar to OpenSlide, except OpenRemoteSlide can read whole slide images from remote.

In OpenSlide, the tool openremoteslide-show-properties is able to show the properties of a whole slide image file:

openslide-show-properties path/to/a/wsi

E.g., given a whole slide image file 54089012-2e2f-453f-8b88-7f80d6791eb7.svs, you can extract the properties of the svs by:

./openslide-show-properties ./54089012-2e2f-453f-8b88-7f80d6791eb7.svs

In OpenRemoteSlide, you can do this:

openslide-show-properties url/to/a/wsi

E.g., you can access TCGA whole slide image (in svs format) by:

./openslide-show-properties https://api.gdc.cancer.gov/legacy/data/54089012-2e2f-453f-8b88-7f80d6791eb7

where 54089012-2e2f-453f-8b88-7f80d6791eb7 is the UUID of a TCGA whole slide image.

Here is another example: the command,

./openslide-write-png https://api.gdc.cancer.gov/legacy/data/54089012-2e2f-453f-8b88-7f80d6791eb7 0 0 3 3237 2669 output.png

helps you to read a defined region of interest on a whole slide image of TCGA over the Internet.

OpenRemoteSlide is compatible with OpenSlide (thus, compatible with OpenSlide-Python: https://github.com/openslide/openslide-python and OpenSlide-Java: https://github.com/openslide/openslide-java), except the Windows version.

Why I'm doing this?

Recent progress in applying deep learning technologies for the analysis of digital pathological images has received much attention from researchers in both industry and academia as accuracy of these methods can be as good as 98.4%. However, most deep learning approaches require huge sets of training patterns. In addition, a pathological whole slide image (WSI) can be as big as 1 to 10 GB and most of the images are not always freely available on a local storage system. On the other hand, not every piece on the WSI is needed for either human-made or automated pathological analysis. This fact represents a huge cost redundancy in terms of data transfer and storage.

Thus, I decided to develop OpenRemoteSlide, which is an extension for OpenSlide (http://openslide.org/), allowing users accessing images from remote based on the same fashion of using OpenSlide. For example, in OpenSlide, you use (/path/to/an/image/file.svs) pointing a digital pathological whole-slide image file. In OpenRemoteSlide, instead of downloading all giga-size image files beforehand, you can actually access any region of an image from remote by giving its URL, e.g., (https://url/to/an/image/file.svs), so that the cost for data transfer and storage can be saved.

 openremoteslide_performance.png

The figure shows comparison of the costs of data transfer and storage performance for OpenRemoteSlide. We used the TCGA pathological image set as an example, selected some WSIs with size ~1GB. This plot shows the differences between the costs of acquiring various amount of information from these WSIs.

Based on OpenRemoteSlide, the average cost (the actual size of data transferred and stored) for obtaining the image properties is ~7.5 MB, which is less than 1% of the data file size of the chosen image. For acquiring a (4000x4000) image from level 0, the average cost is ~19.8 MB, about 1.8% of the total data size. For randomly acquiring 100 image samples with size of (400x400), the average cost is ~233 MB, about 21.2% of the total data size. In other words, the proposed OpenRemoteSlide can save the cost of accessing WSIs from remote from 78.8% up to 99.3%, depending on the desired coefficients for the data acquisition.

For the other details, please see README-OpenSlide.txt. You can also find the original distribution of OpenSlide from: http://openslide.org

Good luck!

openremoteslide's People

Contributors

bgilbert avatar agoode avatar hauke76 avatar huangch avatar jaharkes avatar malaterre avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.