Cornerstonejs

作者: nn00607 (多愁善感之產物)   2025-05-05 22:44:25
不知道有沒有醫療的前輩大大QQ
小妹在載入一千張Dicom遇到了記憶體效能問題,苦惱的點是必須要一次完全載入,不能分段載入,用Web worker好像也沒什麼用(可能是因為不是處理計算而是處理影像)
let newVolume;
const processImages = async () => {
return new Promise((resolve) => {
requestIdleCallback(async () => {
newVolume = await volumeLoader.createAndCacheVolume(newVolumeId, {
imageIds,)
});
resolve();
});
});
};
await processImages();
希望能遇到前輩站內信相救QQ 使用者每次點case 載入都要50秒,甚至有些記憶體洩漏就直接不顯示了…我快沒輒了QQQ
作者: LPH66 (-6.2598534e+18f)   2025-05-06 07:00:00
一次完全載入的理由是什麼? 有什麼介面上的原因需要這樣嗎?如果是影像處理為何無法以一至數個影像為單位處理?
作者: nn00607 (多愁善感之產物)   2025-05-06 13:22:00
需要一次載入因為冠切面(coronal)、及矢切面(sagittal)要完整顯示QQ
作者: brianwu1201 (bunny29)   2025-05-07 22:30:00
聽起來問題有兩個,因為很多 reqs 要處理,整體時間很長;另一是處理過程可能有東西沒回收,導致 memoryleak 。覺得可以先針對記憶體的使用做檢查,確認變數沒有因為 closure, refs 等原因導致無用的變數佔據記憶體。另外官方可能有推薦大量載入時的使用方式,可以看一下 https://cornerstonejs.org/docs/concepts/cornerstone-core/volumeloader/https://cornerstonejs.org/docs/concepts/streaming-image-volume/streaming
作者: nn00607 (多愁善感之產物)   2025-05-08 19:14:00
謝謝樓上QQ 感恩您

Links booklink

Contact Us: admin [ a t ] ucptt.com