Crop DICOM via Java Cloud API
Crop DICOM using native Java Cloud APIs without needing any image editor or 3rd-party libraries.
Get StartedHow to Crop DICOM Using Java Cloud API
Aspose.Imaging.Cloud for Java API which is a feature-rich, powerful and easy to use image manipulation and conversion Cloud API for Java platform. You can download its latest version directly from Maven and install it within your Maven-based project by adding the following configurations to the pom.xml.
pom.xml fragment
<repository>
<id>AsposeJavaCloudAPI</id>
<name>Aspose.Imaging Cloud Java SDK</name>
<url>https://repository.aspose.cloud/repo/</url>
</repository>
...
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-imaging-cloud</artifactId>
<version>version of aspose-imaging-cloud API</version>
<classifier>jdk16</classifier>
</dependency>
Steps to Crop DICOM via Java Cloud API
Developers can easily load & crop DICOM files in just a few lines of code.
- Load DICOM file as stream
- Create & set the instance of CreateCroppedImageRequest
- Set start position and crop area size
- Call the CreateCroppedImage method
- Get cropped image from response stream
System Requirements
Aspose.Imaging Cloud for Java is supported on all major operating systems. Just make sure that you have the following prerequisites.
- JDK 1.6 or higher is installed.
Crop DICOM - Cloud
import com.aspose.imaging.cloud.sdk.model.requests.CreateCroppedImageRequest; | |
import com.aspose.imaging.cloud.sdk.model.requests.CropImageRequest; | |
import java.nio.file.Files; | |
import java.nio.file.Paths; | |
string ImageFileName = "example_image.dicom"; | |
string ImagesFolder = "ExampleImages"; | |
string CloudFolder = "CloudImages"; | |
string OutputFolder = "Output"; | |
// Get ClientId and ClientSecret from https://dashboard.aspose.cloud/ | |
// or use on-premise version (https://docs.aspose.cloud/imaging/getting-started/how-to-run-docker-container/) | |
ImagingApi api = new ImagingApi(argumentValues.ClientSecret, argumentValues.ClientId, "https://api.aspose.cloud"); | |
/** | |
* Crop an image from cloud storage. | |
* | |
* @throws Exception | |
*/ | |
public void cropImageFromStorage() throws Exception { | |
// Upload image to cloud storage | |
byte[] inputImage = Files.readAllBytes(Paths.get(ImagesFolder, ImageFileName)); | |
UploadFileRequest request = new UploadFileRequest(Paths.get(CloudFolder, ImageFileName).toString(), image, null); | |
FilesUploadResult response = api.uploadFile(request); | |
if(response.getErrors() != null && response.getErrors().size() > 0) | |
throw new Exception("Uploading errors count: " + response.getErrors().size()); | |
// Please refer to https://docs.aspose.cloud/imaging/supported-file-formats/#crop | |
// for possible formats | |
String format = "png"; | |
Integer x = 10; | |
Integer y = 10; | |
Integer width = 100; | |
Integer height = 150; | |
String folder = CloudFolder; // Input file is saved at the desired folder in the storage | |
String storage = null; // We are using default Cloud Storage | |
CropImageRequest request = new CropImageRequest(ImageFileName, x, y, width, height, format, folder, storage); | |
byte[] updatedImage = api.cropImage(request); | |
// Save the image file to output folder | |
String croppedImageName = ImageFileName.substring(0, ImageFileName.lastIndexOf('.') + "png"; | |
Path path = Paths.get(OutputFolder, croppedImageName).toAbsolutePath(); | |
Files.write(path, updatedImage); | |
} | |
/// <summary> | |
/// Crop an image. Image data is passed in a request stream. | |
/// </summary> | |
public void createCroppedImageFromRequest() throws Exception { | |
byte[] inputStream = Files.readAllBytes(Paths.get(ImagesFolder, ImageFileName)); | |
// Please refer to https://docs.aspose.cloud/imaging/supported-file-formats/#crop | |
// for possible formats | |
String format = "png"; | |
Integer x = 10; | |
Integer y = 10; | |
Integer width = 100; | |
Integer height = 150; | |
String outPath = null; // Path to updated file (if this is empty, response contains streamed image) | |
String storage = null; // We are using default Cloud Storage | |
CreateCroppedImageRequest request = new CreateCroppedImageRequest(inputStream, x, y, width, height, format, outPath, storage); | |
byte[] updatedImage = api.createCroppedImage(request); | |
// Save the image file to output folder | |
String croppedImageName = ImageFileName.substring(0, ImageFileName.lastIndexOf('.') + "png"; | |
Path path = Paths.get(OutputFolder, croppedImageName).toAbsolutePath(); | |
Files.write(path, updatedImage); | |
} |
About Aspose.Imaging Cloud API for Java
Aspose.Imaging Cloud API is an image processing solution to process images (photos) within your cloud or web applications. It offers: cross-platform Image processing, including but not limited to conversions between various image formats (including uniform multi-page or multi-frame image processing), transformations (resize, crop, flip&rotate, grayscale, adjust), advanced image manipulation features (filtering, deskewing), AI features (i.e. object detection and reverse image search). It’s a Cloud API and does not depend on any software for image operations. One can easily add high-performance image conversion features with Cloud APIs within projects. Flexible integrations options including SDKs for various languages (Python, Ruby, .NET, Java, NodeJS, PHP) and the use of the REST API allow to make the integration easy.
Crop DICOMs via Online App
Crop DICOM documents by visiting our Live Demos website. The live demo has the following benefits:
DICOM What is DICOM File Format
DICOM is the acronym for Digital Imaging and Communications in Medicine and pertains to the field of Medical Informatics. DICOM is the combination of file format definition and a network communications protocol. DICOM uses the .DCM extension. .DCM exist in two different formats i.e. format 1.x and format 2.x. DCM Format 1.x is further available in two versions normal and extended. DICOM is used for the integration of medical imaging devices like printers, servers, scanners etc from various vendors and also contains identification data of each patient for uniqueness. DICOM files can be shared between two parties if they are capable of receiving image data in DICOM format. The communication part of DICOM is application layer protocol and uses TCP/IP to communicate between entities. HTTP and HTTPS protocols are used for the web services of DICOM. Versions supported by web services are 1.0, 1.1, 2 or later.
Read MoreOther Supported Conversions
Using Java Cloud API, one can easily crop different formats including: