将dicom转换为jpg java.lang.arithmetricException:/by零 位于com.sun.media.imageioimpl.plugins.jpeg2000.J2KRenderedImageCodecLib(J2KRenderedImageCodecLib.java:225) 位于com.sun.media.imageioimpl.plugins.jpeg2000.J2KImageReaderCodecLib.read(J2KImageReaderCodecLib.java:364) 位于org.dcm4che3.imageio.plugins.dcm.DicomImageReader.read(DicomImageReader.java:284) 位于com.panemr.dicom.util.DicomToImageConverter.readImage(DicomToImageConverter.java:345) 位于com.panemr.dicom.util.DicomToImageConverter.convert(DicomToImageConverter.java:322) 位于com.panemr.dicom.util.dicomtoimageconvert.mconvert(DicomToImageConverter.java:307) 位于com.panemr.dicom.helper.ImageConverterHelper.ConvertdicomtoJPEGORMAT(ImageConverterHelper.java:44) 位于com.panemr.dicom.action.DicomConnectionAction.initiateImageConverter(DicomConnectionAction.java:93) 位于com.panemr.dicom.action.DicomConnectionAction.fetchDicomFromDCM(DicomConnectionAction.java:74) 在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处 位于sun.reflect.NativeMethodAccessorImpl.invoke(未知源) 在sun.reflect.DelegatingMethodAccessorImpl.invoke处(未知源) 位于java.lang.reflect.Method.invoke(未知源) 在com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:453) 位于com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:292) 位于com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:255) 位于org.apache.struts2.interceptor.debug.DebuggingInterceptor.intercept(DebuggingInterceptor.java:256) 在com.opensymphony.xwork2.DefaultActionInvocation.invoke上(DefaultActionInvocation.java:249) 在com.opensymphony.xwork2.intercept.DefaultWorkflowIntercept.doIntercept(DefaultWorkflowIntercept.java:176) 在com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)上 在com.opensymphony.xwork2.DefaultActionInvocation.invoke上(DefaultActionInvocation.java:249) 位于com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265) 位于org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68) 在com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)上 在com.opensymphony.xwork2.DefaultActionInvocation.invoke上(DefaultActionInvocation.java:249) 在com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138) 在com.opensymphony.xwork2.DefaultActionInvocation.invoke上(DefaultActionInvocation.java:249) 在com.opensymphony.xwork2.interceptor.parameters-sinterceptor.doIntercept(parameters-sinterceptor.java:211) 在com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)上 在com.opensymphony.xwork2.DefaultActionInvocation.invoke上(DefaultActionInvocation.java:249) 在com.opensymphony.xwork2.interceptor.parameters-sinterceptor.doIntercept(parameters-sinterceptor.java:211) 在com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)上 在com.opensymphony.xwork2.DefaultActionInvocation.invoke上(DefaultActionInvocation.java:249) 在com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept上(StaticParametersInterceptor.java:190) 在com.opensymphony.xwork2.DefaultActionInvocation.invoke上(DefaultActionInvocation.java:249)

将dicom转换为jpg java.lang.arithmetricException:/by零 位于com.sun.media.imageioimpl.plugins.jpeg2000.J2KRenderedImageCodecLib(J2KRenderedImageCodecLib.java:225) 位于com.sun.media.imageioimpl.plugins.jpeg2000.J2KImageReaderCodecLib.read(J2KImageReaderCodecLib.java:364) 位于org.dcm4che3.imageio.plugins.dcm.DicomImageReader.read(DicomImageReader.java:284) 位于com.panemr.dicom.util.DicomToImageConverter.readImage(DicomToImageConverter.java:345) 位于com.panemr.dicom.util.DicomToImageConverter.convert(DicomToImageConverter.java:322) 位于com.panemr.dicom.util.dicomtoimageconvert.mconvert(DicomToImageConverter.java:307) 位于com.panemr.dicom.helper.ImageConverterHelper.ConvertdicomtoJPEGORMAT(ImageConverterHelper.java:44) 位于com.panemr.dicom.action.DicomConnectionAction.initiateImageConverter(DicomConnectionAction.java:93) 位于com.panemr.dicom.action.DicomConnectionAction.fetchDicomFromDCM(DicomConnectionAction.java:74) 在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处 位于sun.reflect.NativeMethodAccessorImpl.invoke(未知源) 在sun.reflect.DelegatingMethodAccessorImpl.invoke处(未知源) 位于java.lang.reflect.Method.invoke(未知源) 在com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:453) 位于com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:292) 位于com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:255) 位于org.apache.struts2.interceptor.debug.DebuggingInterceptor.intercept(DebuggingInterceptor.java:256) 在com.opensymphony.xwork2.DefaultActionInvocation.invoke上(DefaultActionInvocation.java:249) 在com.opensymphony.xwork2.intercept.DefaultWorkflowIntercept.doIntercept(DefaultWorkflowIntercept.java:176) 在com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)上 在com.opensymphony.xwork2.DefaultActionInvocation.invoke上(DefaultActionInvocation.java:249) 位于com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265) 位于org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68) 在com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)上 在com.opensymphony.xwork2.DefaultActionInvocation.invoke上(DefaultActionInvocation.java:249) 在com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138) 在com.opensymphony.xwork2.DefaultActionInvocation.invoke上(DefaultActionInvocation.java:249) 在com.opensymphony.xwork2.interceptor.parameters-sinterceptor.doIntercept(parameters-sinterceptor.java:211) 在com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)上 在com.opensymphony.xwork2.DefaultActionInvocation.invoke上(DefaultActionInvocation.java:249) 在com.opensymphony.xwork2.interceptor.parameters-sinterceptor.doIntercept(parameters-sinterceptor.java:211) 在com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)上 在com.opensymphony.xwork2.DefaultActionInvocation.invoke上(DefaultActionInvocation.java:249) 在com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept上(StaticParametersInterceptor.java:190) 在com.opensymphony.xwork2.DefaultActionInvocation.invoke上(DefaultActionInvocation.java:249),java,Java,我检查了com.sun.media.imageioimpl.plugins.jpeg2000.J2KRenderedImageCodecLib类,发现xStep和yStep变量的值没有设置: java.lang.ArithmeticException: / by zero at com.sun.media.imageioimpl.plugins.jpeg2000.J2KRenderedImageCodecLib.<init>(J2KRenderedImageCodecLib.

我检查了com.sun.media.imageioimpl.plugins.jpeg2000.J2KRenderedImageCodecLib类,发现xStep和yStep变量的值没有设置:

java.lang.ArithmeticException: / by zero
    at com.sun.media.imageioimpl.plugins.jpeg2000.J2KRenderedImageCodecLib.<init>(J2KRenderedImageCodecLib.java:225)
    at com.sun.media.imageioimpl.plugins.jpeg2000.J2KImageReaderCodecLib.read(J2KImageReaderCodecLib.java:364)
    at org.dcm4che3.imageio.plugins.dcm.DicomImageReader.read(DicomImageReader.java:284)
    at com.panemr.dicom.util.DicomToImageConverter.readImage(DicomToImageConverter.java:345)
    at com.panemr.dicom.util.DicomToImageConverter.convert(DicomToImageConverter.java:322)
    at com.panemr.dicom.util.DicomToImageConverter.mconvert(DicomToImageConverter.java:307)
    at com.panemr.dicom.helper.ImageConverterHelper.convertDicomToJPEGFormat(ImageConverterHelper.java:44)
    at com.panemr.dicom.action.DicomConnectionAction.initiateImageConverter(DicomConnectionAction.java:93)
    at com.panemr.dicom.action.DicomConnectionAction.fetchDicomFromDCM(DicomConnectionAction.java:74)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:453)
    at com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:292)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:255)
    at org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:256)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)
    at com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176)
    at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)
    at com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265)
    at org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
    at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)
    at com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)
    at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:211)
    at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)
    at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:211)
    at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)
    at com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190)
    at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)
for(int i=0;i

因为这个循环没有运行。要运行它,我必须做些什么?

如果没有设置xStep和yStep,则表示decodeCompParams()方法在Ondkloss中有问题,而不是rply的x!是的,你是对的。实际上decodeCompParams()方法包含一个本机方法。我没有任何代码。您能建议我相同文件大小的源代码链接。csize设置为0,其值不变。我不知道为什么这个循环没有运行。如何找到com.sun.medialib.codec.jp2k包类的本机方法的代码。我不能从网上任何地方得到它的源代码
for (int i = 0; i < size.csize; i++) {
    decoder.decodeCompParams(compParam, i);
    if(i == 0) {
        xStep = compParam.xstep;
        yStep = compParam.ystep;
    } else if(compParam.xstep != xStep || compParam.ystep != yStep) {
        // All components must have same subsampling along each axis.
        throw new IIOException
        ("All components must have the same subsampling factors!");
    }
}