dcm4chee存储dicom命令
时间: 2023-08-29 17:11:15 浏览: 56
dcm4chee是一个开源的DICOM(数字影像与通信医学)服务器,它可以存储、检索和传输DICOM图像和相关信息。以下是一些dcm4chee存储DICOM命令的示例:
- 使用C-STORE请求将DICOM文件存储到dcm4chee服务器:
```
storescu -aec DCM4CHEE localhost 11112 file1.dcm
```
- 使用C-STORE SCU将DICOM文件存储到dcm4chee服务器:
```
java -jar dcm4che-tool-dcmqrscp.jar -b DCM4CHEE:11112 -c STORESCP file1.dcm
```
- 使用DCMQRSCP将DICOM文件存储到dcm4chee服务器:
```
java -jar dcm4che-tool-dcmqrscp.jar -b DCM4CHEE:11112 -c STORESCU file1.dcm
```
- 使用dcm2xml将DICOM文件转换为XML格式,并将其存储到dcm4chee服务器:
```
dcm2xml file1.dcm | storescu -aec DCM4CHEE localhost 11112 -
```
请注意,以上示例仅供参考,具体实现可能会有所不同,具体取决于您的dcm4chee服务器配置和环境。
相关问题
给出java代码使用dcm4che库获取dcm4chee服务的dicom文件
以下是使用dcm4che库获取dcm4chee服务的Dicom文件的Java代码示例:
```java
import org.dcm4che3.data.Attributes;
import org.dcm4che3.data.Tag;
import org.dcm4che3.io.DicomInputStream;
import org.dcm4che3.net.ApplicationEntity;
import org.dcm4che3.net.Connection;
import org.dcm4che3.net.Device;
import org.dcm4che3.net.QueryOption;
import org.dcm4che3.net.service.DicomServiceException;
import org.dcm4che3.net.service.QueryRetrieveSCP;
import org.dcm4che3.net.service.QueryRetrieveService;
import org.dcm4che3.util.SafeClose;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.Socket;
import java.util.List;
public class DicomRetrieveExample {
public static void main(String[] args) throws Exception {
// 连接dcm4chee服务
Device device = new Device("retrieve");
Connection conn = new Connection();
conn.setHostname("dcm4chee-server");
conn.setPort(11112);
device.setConnection(conn);
ApplicationEntity ae = new ApplicationEntity("retrieve");
ae.addConnection(conn);
device.addApplicationEntity(ae);
device.setAssociationInitiator(true);
device.setPackPDV(true);
device.setTcpNoDelay(true);
device.setConnectTimeout(5000);
device.setRequestTimeout(5000);
device.setReceivePDULength(16384);
device.setSendPDULength(16384);
device.setRspTimeout(5000);
device.setAssociationAcceptor(true);
device.setAsyncOpsWindow(0, 1);
device.setMaxAsyncOpsInvoked(1);
device.setMaxAsyncOpsPerformed(1);
device.setStorageSCP(new QueryRetrieveSCP("*") {
@Override
protected void store(Socket socket, InputStream data, int pcid, String tsuid, Attributes attrs, Attributes rsp)
throws IOException, DicomServiceException {
// 不存储
}
});
device.startListening();
// 检索Dicom文件
QueryRetrieveService qrService = ae.getDevice().getQrService();
qrService.setQueryOptions(QueryOption.RELATIONAL);
qrService.setRetrieveTimeout(10000);
qrService.setCMoveDestination(conn.getCalledAET());
List<String> studies = qrService.queryStudies("*");
for (String study : studies) {
List<String> series = qrService.querySeries(study, "*");
for (String serie : series) {
List<String> instances = qrService.queryInstances(serie, "*");
for (String instance : instances) {
// 获取Dicom文件
DicomInputStream dis = null;
FileOutputStream fos = null;
try {
dis = new DicomInputStream(qrService.retrieveInstance(instance));
Attributes attrs = dis.readDataset(-1, -1);
// 保存Dicom文件
File outputFile = new File("path/to/output/file.dcm");
fos = new FileOutputStream(outputFile);
fos.write(dis.readBytes());
} finally {
SafeClose.close(fos);
SafeClose.close(dis);
}
}
}
}
// 断开连接
device.stopListening();
device.unbindConnections();
}
}
```
这个示例演示了如何使用dcm4che库从dcm4chee服务检索Dicom文件。首先,使用dcm4che库连接dcm4chee服务。然后,使用dcm4chee服务的QueryRetrieveService查询Dicom文件,获取Dicom文件并保存它们。最后,断开连接。
请将`dcm4chee-server`替换为dcm4chee服务的主机名或IP地址,并将`path/to/output/file.dcm`替换为要保存的文件路径。
windows安装DCM4CHEE
好的,以下是安装DCM4CHEE的步骤:
1. 首先,你需要下载DCM4CHEE的安装包。你可以在官网上下载最新版本的安装包:https://www.dcm4che.org/download/dcm4chee-arc-light/
2. 解压缩下载的安装包到你想要安装DCM4CHEE的目录。
3. 打开解压后的文件夹,找到bin目录下的startup.bat文件,双击运行。
4. 等待一段时间,直到命令行窗口中出现“DCM4CHEE Arc Light started in xxx seconds”字样,表示DCM4CHEE已经成功启动。
5. 打开浏览器,输入http://localhost:8080/dcm4chee-arc/ui2/,进入DCM4CHEE的管理界面。
6. 输入默认用户名和密码(用户名:admin,密码:admin),即可进入DCM4CHEE的管理界面。
7. 至此,DCM4CHEE已经成功安装并启动。