DicomConfig.java 1.2 KB

12345678910111213141516171819202122232425262728293031323334
  1. package com.zskk.qconline.config;
  2. import lombok.extern.slf4j.Slf4j;
  3. import org.springframework.context.annotation.Configuration;
  4. import javax.annotation.PostConstruct;
  5. /**
  6. * DICOM配置
  7. *
  8. * @author system
  9. * @date 2025-12-28
  10. */
  11. @Slf4j
  12. @Configuration
  13. public class DicomConfig {
  14. @PostConstruct
  15. public void init() {
  16. try {
  17. // 加载 OpenCV 本地库(定制版本支持DICOM压缩格式)
  18. System.loadLibrary(org.opencv.core.Core.NATIVE_LIBRARY_NAME);
  19. log.info("成功加载 OpenCV 本地库: {}", org.opencv.core.Core.NATIVE_LIBRARY_NAME);
  20. log.info("OpenCV 版本: {}", org.opencv.core.Core.VERSION);
  21. } catch (UnsatisfiedLinkError e) {
  22. log.warn("加载 OpenCV 本地库失败,某些压缩格式的DICOM可能无法处理: {}", e.getMessage());
  23. // 如果加载失败,尝试禁用 native 代码
  24. System.setProperty("org.dcm4che3.imageio.codec.ImageReaderFactory.NoDefault", "true");
  25. log.info("已设置禁用 dcm4che3 的默认 ImageReader");
  26. } catch (Exception e) {
  27. log.error("初始化 OpenCV 时发生未知错误", e);
  28. }
  29. }
  30. }