Cornerstone簡介
CornerStone是一個交互式的顯示,包括但不限於Dicom格式的醫學影像的JavaScript庫。
Corenerstone 是一個旨在搭建一個完全基於web的醫學影像平臺的開源項目。Cornerstone Core組件是一個在支持HTML5 canvas元素的現代瀏覽器上顯示醫學影像的輕量級的JavaScript庫。Cornerstone Core自己並不會成爲一個獨立的應用程序,但是會作爲一個更大更復雜的應用程序的一個組件。
地址:https://github.com/chafey/cornerstone
cornerstone的數據結構
element是Html中的一個塊元素。
Image是圖像信息包括像素數據和病人數據。
Viewport是窗口信息:包括x,y座標信息,縮放比例信息,圖像旋轉角度等信息。
Canvas是畫布信息
pixel數據處理流程圖
Base64編碼可用於在HTTP環境下傳遞較長的標識信息。編碼規則:把三個字符變爲4個字符有一定的加密效果。
採用LUT圖像查找表可以加快圖像數據的加載速度。
viewport屬性
scale表示圖像縮放比例
Translation有X,Y兩個屬性分別表示圖像平移的座標
Voi有windowWidth,windowCenter兩個屬性表示窗寬窗位
Invert表示圖像倒置
pixelReplication表示
rotation表示圖像轉轉角度
hflip表示左右倒置
vflip表示上下倒置
modalityLUT表示查找表方法
voiLUT表示感興趣區轉換
image屬性
imageId: imageId, //id
minPixelValue: 0, //最小像素值
maxPixelValue: 255, //最大像素值
slope: 1.0, //斜率
intercept: 0, //截距
windowCenter: 127, //窗位
windowWidth: 256, //窗寬
render: cornerstone.renderGrayscaleImage, //渲染灰度圖像
getPixelData: getPixelData, //返回像素數組
rows: height, //行
columns: width, //列
height: height, //高
width: width, //寬
color: false, //是否單色
columnPixelSpacing: 1.0, //像素之間的縱向間隔
rowPixelSpacing: 1.0, //像素之間的橫向間隔
invert: false, //倒置
sizeInBytes: width * height * 2 //字節大小