liufuhua007

修改

Tag.SOPClassUID,
Tag.StudyInstanceUID,
Tag.SeriesInstanceUID
的生成
1 <?xml version="1.0" encoding="utf-8"?> 1 <?xml version="1.0" encoding="utf-8"?>
2 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
3 xmlns:tools="http://schemas.android.com/tools" 3 xmlns:tools="http://schemas.android.com/tools"
4 - package="com.sw.laryngoscope"> 4 + package="com.sw.laryngoscope"
5 -<!-- android:sharedUserId="android.uid.system" >--> 5 + android:sharedUserId="android.uid.system" >
6 6
7 <!--android:sharedUserId="android.uid.system"--> 7 <!--android:sharedUserId="android.uid.system"-->
8 8
......
...@@ -15,6 +15,7 @@ import org.dcm4che3.io.DicomOutputStream; ...@@ -15,6 +15,7 @@ import org.dcm4che3.io.DicomOutputStream;
15 15
16 import java.io.File; 16 import java.io.File;
17 import java.util.List; 17 import java.util.List;
18 +import java.util.UUID;
18 19
19 20
20 public class Jpg2Dcm { 21 public class Jpg2Dcm {
...@@ -25,10 +26,12 @@ public class Jpg2Dcm { ...@@ -25,10 +26,12 @@ public class Jpg2Dcm {
25 try { 26 try {
26 Attributes attrs = new Attributes(); 27 Attributes attrs = new Attributes();
27 28
29 + // 生成SOP实例UID
30 + String sopInstanceUID = "1.2.840." + UUID.randomUUID().toString();
31 +
28 String ts = UID.ExplicitVRLittleEndian; 32 String ts = UID.ExplicitVRLittleEndian;
29 Attributes fmi = 33 Attributes fmi =
30 - Attributes.createFileMetaInformation("1.2.840.113619.2.55.3.2831180801.104.1384184038.748.1059", 34 + Attributes.createFileMetaInformation(sopInstanceUID, "1.2.840.10008.5.1.4.1.1.2", ts);
31 - "1.2.840.10008.5.1.4.1.1.2", ts);
32 35
33 Bitmap bmpPic = BitmapFactory.decodeFile(picPath.get(0), null); 36 Bitmap bmpPic = BitmapFactory.decodeFile(picPath.get(0), null);
34 37
...@@ -43,7 +46,7 @@ public class Jpg2Dcm { ...@@ -43,7 +46,7 @@ public class Jpg2Dcm {
43 46
44 47
45 attrs.setString(Tag.SOPClassUID, VR.UI, "1.2.840.10008.5.1.4.1.1.2"); 48 attrs.setString(Tag.SOPClassUID, VR.UI, "1.2.840.10008.5.1.4.1.1.2");
46 - attrs.setString(Tag.SOPInstanceUID, VR.UI, "1.2.840.113619.2.55.3.2831180801.104.1384184038.748.1059"); 49 + attrs.setString(Tag.SOPInstanceUID, VR.UI, sopInstanceUID);
47 //检查日期:检查开始的日期 50 //检查日期:检查开始的日期
48 attrs.setString(Tag.StudyDate, VR.AS, studyDate);//"20140126" 51 attrs.setString(Tag.StudyDate, VR.AS, studyDate);//"20140126"
49 attrs.setString(Tag.SeriesDate, VR.AS, studyDate); 52 attrs.setString(Tag.SeriesDate, VR.AS, studyDate);
...@@ -66,8 +69,15 @@ public class Jpg2Dcm { ...@@ -66,8 +69,15 @@ public class Jpg2Dcm {
66 attrs.setInt(Tag.BitsStored, VR.IS, 8); 69 attrs.setInt(Tag.BitsStored, VR.IS, 8);
67 attrs.setInt(Tag.NumberOfFrames, VR.IS, picPath.size());//2图片的个数 70 attrs.setInt(Tag.NumberOfFrames, VR.IS, picPath.size());//2图片的个数
68 71
69 - attrs.setString(Tag.StudyInstanceUID, VR.UI, "1.2.840.113619.2.55.3.2831180801.104.1384184038.36"); 72 + // 生成唯一的研究实例UID
70 - attrs.setString(Tag.SeriesInstanceUID, VR.UI, "1.2.840.113619.2.55.3.2831180801.104.1384184038.46"); 73 + String studyInstanceUID = "1.2.840." + UUID.randomUUID().toString();
74 + // 生成唯一的系列实例UID
75 + String seriesInstanceUID = "1.2.840." + UUID.randomUUID().toString();
76 +// attrs.setString(Tag.StudyInstanceUID, VR.UI, "1.2.840.113619.2.55.3.2831180801.104.1384184038.36");
77 +// attrs.setString(Tag.SeriesInstanceUID, VR.UI, "1.2.840.113619.2.55.3.2831180801.104.1384184038.46");
78 + attrs.setString(Tag.StudyInstanceUID, VR.UI, studyInstanceUID);
79 + attrs.setString(Tag.SeriesInstanceUID, VR.UI, seriesInstanceUID);
80 +
71 attrs.setInt(Tag.SeriesNumber, VR.IS, 2); 81 attrs.setInt(Tag.SeriesNumber, VR.IS, 2);
72 //辨识图像的号码 82 //辨识图像的号码
73 attrs.setInt(Tag.InstanceNumber, VR.US, 1); 83 attrs.setInt(Tag.InstanceNumber, VR.US, 1);
......