Cornerstone.js Use related

Source: Internet
Author: User

Website address: Https://github.com/chafey/cornerstone

Brief introduction:

Cornerstone is an open source project with a goal to deliver a complete web based medical imaging platform. This repository contains the Cornerstone Core component which are a lightweight JavaScript library for displaying medical I Mages in modern web browsers, the HTML5 canvas element. Cornerstone Core isn't meant to being a complete application itself, but instead a component so can be used as part of Lar GER more complex applications. See the Ohif Viewer for a example of using the various Cornerstone libraries to build a simple study Viewer.

Cornerstone Core is agnostic to the actual container used to store image pixels as well as the transport mechanism used To get the image data. In fact, Cornerstone Core itself have no ability to read/parse or load images and instead depends on one or more image Loaders to function. The goal here's to avoid constraining developers to work within a single container and transport (e.g. DICOM) since image S is stored in a variety of formats (including proprietary). By providing flexibility with respect to the container and transport, the highest performance image display could be obtaine D as no conversion to a alternate container or transport is required. It is hoped this developers feel empowered to the load images from any type of the image container using any kind of transport. See The cornerstonewadoimageloader project for a example of a DICOM WADO based Image Loader.

The Cornerstone is an open source project with the goal of providing a complete network-based medical imaging platform. The repository contains the cornerstone core component, a lightweight JavaScript library for displaying medical images in a modern web browser that supports HTML5 canvas elements. Cornerstone Core does not mean that it is a complete application itself, but rather a component that can be used as part of a larger and more complex application. for An example of building a simple learning viewer using various Cornerstone Libraries , see ohif Viewer.

Cornerstone Core is independent of the actual container used to store image pixels and the transport mechanism for acquiring image data. In fact, Cornerstone core itself cannot read/parse or load images, but instead relies on one or more imageloaders to run. The goal here is to avoid restricting developers from working in individual containers and transports, such as DICOM, because the images are stored in a variety of formats, including proprietary. by providing flexibility on containers and transports, you can get the highest performance image display, as there is no need to convert to alternative containers or transports. you want developers to have permission to load images from any type of image container using any type of transport.

This is a brief introduction to Cornerstone, simply put, this is not an application, just a JS plug-in, that is, a library, short of the cornerstone. The cornerstone actually encapsulates some of the operation of the dicom image, but for acquiring the image, parsing the image, etc. all depend on the other. js files of the Cornerstone library species.

Start text:

A new requirement is that the dicom image is drawn on the canvas and the previous images are JPG or PNG. Our website is a medical website where doctors upload dicom images and revert dicom image parsing to JPG using a third-party dicom parsing tool to draw on the canvas. I think the idea is actually the same, all of the dicom pixels to parse each message, and then draw the canvas. But it involves two questions: 1. Image pixel resolution 2. When the interaction occurs, frequent data exchange with the background, such as adjusting the window width window, the front-end to pass the value, the background according to WWWC to calculate the display value of the response, and then to the front-end, in the drawing. Above this process is when the interaction with the dicom to JPG, if there is no interaction, just display, then directly back to the background to parse dicom and then turn to JPG, but now need to adjust the window width window, size scaling and so on, It is necessary to directly draw dicom image on canvas (there is also a method, window width window position Baidu a bit of principle, adjust the pixel gray value, we can directly adjust the gray-level jpg pixel grayscale according to the window width, but the formula? For example, window width window 600/1000, then the corresponding image of the gray level should be how much? For the ddicom image window width of the adjustment is a formula, JPG grayscale corresponding window width of the value of the corresponding relationship has not been found, http://blog.csdn.net/lifegame/article/details/ 6388609, this link is to adjust the image grayscale, the inside gives a set of formulas, but does not have the scientific basis, the product is ultimately for the doctor to use, must be accurate (link does not know how the whole dynamic, directly copy and paste)).

self-parsing dicom and then pixel operation is difficult, began to check some relevant information, some companies in doing this, do better, and willing to share the technology of micro-cloud image, although the sharing of technology is too deep, and too little difficult to understand, but still found some answers-- Cornerstone.js

Technical documentation for Micro cloud: http://www.weiyunyingxiang.com/artical8.htm. There is nothing specific to share, but there is a general idea. Later began to look at Cornerstone GitHub link, online there is no such information, see some sites are used this library to do, this library does not meet the needs, some of the examples are just some operations, but how to draw dicom to the canvas and did not find, there is an example, He is the dicom image directly parsed into Base64 code, directly a string to display a good dozens of lines of code, and did not parse the specific operation of the display, and then accidentally clicked to another library, is the cornerstone of the relevant, but can solve the actual problem.

Cornerstonewadoimageloader

Https://github.com/chafey/cornerstoneWADOImageLoader specific can see their own, but some of the problems encountered here to explain:

1.imageids, the unique identity of the image, the original is based on different IDs call different imageloads, the first understanding is to find the appropriate imageload according to their own ID, and finally found that the cornerstone has been well adapted, you just provide the ID, He will automatically use the corresponding image loader based on your ID. Id:url, relative path, absolute path, and so on. Note A problem, is the cross-domain problem, I started with his example, HTTPS page, to request an HTTP protocol dicom, error, cross-domain issues, and eventually used in my own project, no cross-domain, so no problem.

2. Service-side use, local use is error, because there is no domain concept exists, so the same domain does not exist, reported various errors, in the service side of normal operation.

3 Some of his examples of code relative logic is not complex, but if you want to dig into the source, then I guess it is impossible, My project calls about 6.7 js, each JS has tens of thousands of lines of code, not to mention the code, the code inside No comments, arbitrarily defined a variable, are made very complex, I think do not need to understand the implementation, as long as the interface API call.

Specific things can not be all finished, you need to see, understand the process, and then to test. QQ 1151234457 can communicate, this library is quite large, can communicate together.

Cornerstone.js Use related

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.