DicomImage
Innehåll
[
Dölj
]DicomImage class
Det är en klass av implementeringen som arbetar med bild från DICOM file
public sealed class DicomImage : RasterCachedMultipageImage, IMultipageImageExt
Konstruktörer
namn | Beskrivning |
---|---|
DicomImage(Stream) | Initierar en ny instans avDicomImage class. |
DicomImage(Stream, LoadOptions) | Initierar en ny instans avDicomImage class. |
DicomImage(DicomOptions, int, int) | Initierar en ny instans avDicomImage class. |
Egenskaper
namn | Beskrivning |
---|---|
ActivePage { get; set; } | Hämtar eller ställer in den aktiva sidan. |
ActivePageIndex { get; } | Hämtar indexets aktiva sida. |
AutoAdjustPalette { get; set; } | Hämtar eller ställer in ett värde som anger om paletten för automatisk justering. |
override BackgroundColor { get; set; } | Hämtar eller ställer in ett värde för bakgrundsfärgen. |
override BitsPerPixel { get; } | Hämtar bildbitar per pixelantal. |
Bounds { get; } | Får bildens gränser. |
BufferSizeHint { get; set; } | Hämtar eller ställer in buffertstorlekstipset som är definierat som högsta tillåtna storlek för alla interna buffertar. |
Container { get; } | FårImage container. |
DataStreamContainer { get; } | Hämtar objektets dataström. |
DicomPages { get; } | Hämtar sidorna. |
Disposed { get; } | Får ett värde som indikerar om denna instans är bortskaffad. |
override FileFormat { get; } | Får värdet filformat |
FileInfo { get; } | Får ett värde som innehåller informationshuvudet DICOM-filen |
override HasAlpha { get; } | Får alfakanalen Has. |
virtual HasBackgroundColor { get; set; } | Hämtar eller ställer in ett värde som anger om bilden har bakgrundsfärg. |
override HasTransparentColor { get; } | Får ett värde som indikerar om bilden har transparent färg. |
override Height { get; } | Hämtar bildhöjden. |
virtual HorizontalResolution { get; set; } | Hämtar eller ställer in den horisontella upplösningen, i pixlar per tum, för dettaRasterImage . |
override ImageOpacity { get; } | Får opacitet för denna bild. |
InterruptMonitor { get; set; } | Hämtar eller ställer in avbrottsmonitorn. |
IsCached { get; } | Får ett värde som indikerar om bilddata är cachad för närvarande. |
IsRawDataAvailable { get; } | Får ett värde som anger om rådataladdning är tillgänglig. |
override PageCount { get; } | Hämtar sidantal. |
override PageExportingAction { get; set; } | Hämtar eller ställer in sidexporteringsåtgärden. Observera att inställning av den här metoden automatiskt frigör sidresurser efter att den har körts. Den kommer att köras precis innan varje sida sparas. |
override Pages { get; } | Hämtar sidorna. |
Palette { get; set; } | Hämtar eller ställer in färgpaletten. Färgpaletten används inte när pixlar representeras direkt. |
virtual PremultiplyComponents { get; set; } | Hämtar eller ställer in ett värde som anger om bildkomponenterna måste förmultipliceras. |
RawCustomColorConverter { get; set; } | Hämtar eller ställer in den anpassade färgomvandlaren |
virtual RawDataFormat { get; } | Hämtar rådataformatet. |
RawDataSettings { get; } | Hämtar aktuella rådatainställningar. Observera att när du använder dessa inställningar laddas data utan konvertering. |
RawFallbackIndex { get; set; } | Hämtar eller ställer in reservindex som ska användas när palettindex är utanför gränserna |
RawIndexedColorConverter { get; set; } | Hämtar eller ställer in den indexerade färgomvandlaren |
virtual RawLineSize { get; } | Hämtar den rå radstorleken i byte. |
Size { get; } | Hämtar bildstorleken. |
virtual TransparentColor { get; set; } | Får bilden genomskinlig färg. |
virtual UpdateXmpData { get; set; } | Hämtar eller ställer in ett värde som anger om XMP-metadata ska uppdateras. |
override UsePalette { get; } | Får ett värde som indikerar om bildpaletten används. |
virtual UseRawData { get; set; } | Hämtar eller ställer in ett värde som anger om rådataladdning ska användas när rådataladdningen är tillgänglig. |
virtual VerticalResolution { get; set; } | Hämtar eller ställer in den vertikala upplösningen, i pixlar per tum, för dettaRasterImage . |
override Width { get; } | Hämtar bildens bredd. |
override XmpData { get; set; } | Hämtar eller ställer in Xmp-data. |
Metoder
namn | Beskrivning |
---|---|
AddPage() | Lägger till en ny sida i slutet av sidlistan. |
AddPage(RasterImage) | Lägger till sida i bilden. |
override AdjustBrightness(int) | Justering av enbrightness för bild. |
override AdjustContrast(float) | Image kontrasterande |
override AdjustGamma(float) | Gamma-korrigering av en bild. |
override AdjustGamma(float, float, float) | Gamma-korrigering av en bild. |
override BinarizeBradley(double) | Binarisering av en bild med Bradleys adaptiva tröskelalgoritm med integralbildströskelvärde |
override BinarizeBradley(double, int) | Binarisering av en bild med Bradleys adaptiva tröskelalgoritm med hjälp av integralbildströskelvärdet |
override BinarizeFixed(byte) | Binarisering av en bild med fördefinierad tröskel |
override BinarizeOtsu() | Binarisering av en bild med Otsu thresholding |
override CacheData() | Cachelagrar data privat. |
CanSave(ImageOptionsBase) | Bestämmer om bilden kan sparas i det angivna filformatet som representeras av de godkända sparalternativen. |
override Crop(Rectangle) | Beskär bilden. |
override Crop(int, int, int, int) | Beskär bilden med skiftningar. |
Dispose() | Tar bort den aktuella instansen. |
Dither(DitheringMethod, int) | Utför dithering på den aktuella bilden. |
override Dither(DitheringMethod, int, IColorPalette) | Utför dithering på den aktuella bilden. |
override Filter(Rectangle, FilterOptionsBase) | Filtrerar den angivna rektangeln. |
GetArgb32Pixel(int, int) | Får en bild 32-bitars ARGB-pixel. |
GetDefaultArgb32Pixels(Rectangle) | Hämtar standard 32-bitars ARGB-pixelmatrisen. |
virtual GetDefaultOptions(object[]) | Hämtar standardalternativen. |
GetDefaultPixels(Rectangle, IPartialArgb32PixelLoader) | Hämtar standardpixelmatrisen med partial pixel loader. |
GetDefaultRawData(Rectangle, RawDataSettings) | Hämtar standardinställningen för rådata. |
GetDefaultRawData(Rectangle, IPartialRawDataLoader, RawDataSettings) | Hämtar den förinställda rådatamatrisen med hjälp av partial pixel loader. |
virtual GetModifyDate(bool) | Hämtar datum och tid då resursbilden senast ändrades. |
virtual GetOriginalOptions() | Hämtar alternativen baserat på de ursprungliga filinställningarna. Detta kan vara till hjälp för att behålla bitdjupet och andra parametrar i originalbilden oförändrade. Om vi till exempel laddar en svartvit PNG-bild med 1 bit per pixel och sedan spara den med hjälp av Save metod, kommer den utgående PNG-bilden med 8-bitar per pixel att produceras. För att undvika det och spara PNG-bild med 1-bit per pixel, använd den här metoden för att få motsvarande sparalternativ och skicka dem tillSave metod som den andra parametern. |
GetPixel(int, int) | Får en bildpixel. |
GetSkewAngle() | Hämtar skevningsvinkeln. Denna metod är tillämplig på skannade textdokument, för att bestämma snedställningsvinkeln vid skanning. |
override Grayscale() | Transformation av en bild till dess gråskalerepresentation |
InsertPage(int) | Infogar en ny sida i sidlistan vid det angivna indexet. |
LoadArgb32Pixels(Rectangle) | Laddar 32-bitars ARGB-pixlar. |
LoadArgb64Pixels(Rectangle) | Laddar 64-bitars ARGB-pixlar. |
LoadCmyk32Pixels(Rectangle) | Laddar pixlar i CMYK-format. |
LoadPartialArgb32Pixels(Rectangle, IPartialArgb32PixelLoader) | Laddar 32-bitars ARGB-pixlar delvis i paket. |
LoadPartialPixels(Rectangle, IPartialPixelLoader) | Laddar pixlar delvis i paket. |
LoadPixels(Rectangle) | Laddar pixlar. |
LoadRawData(Rectangle, RawDataSettings, IPartialRawDataLoader) | Laddar rådata. |
LoadRawData(Rectangle, Rectangle, RawDataSettings, IPartialRawDataLoader) | Laddar rådata. |
NormalizeAngle() | Normaliserar vinkeln. Denna metod är tillämplig på skannade textdokument för att bli av med den skeva skanningen. Denna metod använderGetSkewAngle ochRotate metoder. |
override NormalizeAngle(bool, Color) | Normaliserar vinkeln. Denna metod är tillämplig på skannade textdokument för att bli av med den skeva skanningen. Denna metod använder!:GetSkewAngle ochRotate metoder. |
ReadArgb32ScanLine(int) | Läser hela skanningslinjen med det angivna skanningslinjeindexet. |
ReadScanLine(int) | Läser hela skanningslinjen med det angivna skanningslinjeindexet. |
RemovePage(int) | Tar bort sidan vid det angivna indexet på sidlistan. |
ReplaceColor(Color, byte, Color) | Ersätter en färg mot en annan med tillåten skillnad och bevarar det ursprungliga alfavärdet för att spara jämna kanter. |
override ReplaceColor(int, byte, int) | Ersätter en färg mot en annan med tillåten skillnad och bevarar det ursprungliga alfavärdet för att spara jämna kanter. |
ReplaceNonTransparentColors(Color) | Ersätter alla icke-transparenta färger med ny färg och bevarar det ursprungliga alfavärdet för att spara jämna kanter. Obs: om du använder det på bilder utan genomskinlighet kommer alla färger att ersättas med en enda. |
override ReplaceNonTransparentColors(int) | Ersätter alla icke-transparenta färger med ny färg och bevarar det ursprungliga alfavärdet för att spara jämna kanter. Obs: om du använder det på bilder utan genomskinlighet kommer alla färger att ersättas med en enda. |
Resize(int, int) | Ändrar storleken på bilden. StandardenNearestNeighbourResample används. |
override Resize(int, int, ImageResizeSettings) | Ändrar storlek på bilden. |
override Resize(int, int, ResizeType) | Ändrar storlek på bilden. |
ResizeHeightProportionally(int) | Ändrar storleken på höjden proportionellt. StandardenNearestNeighbourResample används. |
virtual ResizeHeightProportionally(int, ImageResizeSettings) | Ändrar storleken på höjden proportionellt. |
override ResizeHeightProportionally(int, ResizeType) | Ändrar storleken på bredden proportionellt. |
ResizeProportional(int, int, ResizeType) | Utför proportionell storleksändring på bilden. Den proportionella storleksändringen kommer att ändra storlek på varje bildruta enligt förhållandet mellannewWidth/bredd ochnewHeight /höjd. |
ResizeWidthProportionally(int) | Ändrar storleken på bredden proportionellt. StandardenNearestNeighbourResample används. |
virtual ResizeWidthProportionally(int, ImageResizeSettings) | Ändrar storleken på bredden proportionellt. |
override ResizeWidthProportionally(int, ResizeType) | Ändrar storleken på bredden proportionellt. |
virtual Rotate(float) | Rotera bilden runt mitten. |
override Rotate(float, bool, Color) | !:RasterCahcedMultipageImage.Rotate bild runt mitten. |
override RotateFlip(RotateFlipType) | Roterar, vänder eller roterar och vänder endast den aktiva ramen. |
Save() | Sparar bilddata till den underliggande strömmen. |
Save(Stream) | Sparar objektets data till den angivna strömmen. |
override Save(string) | Sparar bilden till den angivna filplatsen. |
Save(Stream, ImageOptionsBase) | Sparar bildens data till den angivna strömmen i det angivna filformatet enligt sparalternativ. |
virtual Save(string, bool) | Sparar objektets data till den angivna filplatsen. |
virtual Save(string, ImageOptionsBase) | Sparar objektets data till den angivna filplatsen i det angivna filformatet enligt sparalternativ. |
override Save(Stream, ImageOptionsBase, Rectangle) | Sparar bildens data till den angivna strömmen i det angivna filformatet enligt sparalternativ. |
virtual Save(string, ImageOptionsBase, Rectangle) | Sparar objektets data till den angivna filplatsen i det angivna filformatet enligt sparalternativ. |
SaveAll(string, ImageOptionsBase) | Sparar objektets data till den angivna filplatsen (indexerare + filnamn) i det angivna filformatet enligt sparaalternativ.. |
SaveArgb32Pixels(Rectangle, int[]) | Sparar 32-bitars ARGB-pixlar. |
SaveCmyk32Pixels(Rectangle, int[]) | Sparar pixlarna. |
SavePixels(Rectangle, Color[]) | Sparar pixlarna. |
SaveRawData(byte[], int, Rectangle, RawDataSettings) | Sparar rådata. |
SetArgb32Pixel(int, int, int) | Ställer in en 32-bitars ARGB-pixel för den angivna positionen. |
override SetPalette(IColorPalette, bool) | Ställer in bildpaletten. |
SetPixel(int, int, Color) | Ställer in en bildpixel för den angivna positionen. |
override SetResolution(double, double) | Ställer in upplösningen för dettaRasterImage . |
virtual ToBitmap() | Konverterar rasterbilden till bitmappen. |
WriteArgb32ScanLine(int, int[]) | Skriver hela skanningslinjen till det angivna skanningslinjeindexet. |
WriteScanLine(int, Color[]) | Skriver hela skanningslinjen till det angivna skanningslinjeindexet. |
Exempel
Ändra färgtyp i DICOM-komprimering.
[C#]
using (var inputImage = Image.Load("original.jpg"))
{
var options = new DicomOptions { ColorType = ColorType.Grayscale8Bit };
inputImage.Save("original_8Bit.dcm", options);
}
Använd RLE-komprimering i DICOM-bild.
[C#]
using (var inputImage = Image.Load("original.jpg"))
{
var options = new DicomOptions
{
ColorType = ColorType.Rgb24Bit,
Compression = new Compression { Type = CompressionType.Rle }
};
inputImage.Save("original_RLE.dcm", options);
}
Använd JPEG 2000-komprimering i DICOM-bild.
[C#]
using (var inputImage = Image.Load("original.jpg"))
{
var options = new DicomOptions
{
ColorType = ColorType.Rgb24Bit,
Compression = new Compression
{
Type = CompressionType.Jpeg2000,
Jpeg2000 = new Jpeg2000Options
{
Codec = Jpeg2000Codec.Jp2,
Irreversible = false
}
}
};
inputImage.Save("original_JPEG2000.dcm", options);
}
Använd JPEG-komprimering i DICOM-bild.
[C#]
using (var inputImage = Image.Load("original.jpg"))
{
var options = new DicomOptions
{
ColorType = ColorType.Rgb24Bit,
Compression = new Compression
{
Type = CompressionType.Jpeg,
Jpeg = new JpegOptions
{
CompressionType = JpegCompressionMode.Baseline,
SampleRoundingMode = SampleRoundingMode.Truncate,
Quality = 50
}
}
};
inputImage.Save("original_JPEG.dcm", options);
}
Det här exemplet visar hur man laddar en DICOM-bild från en filström.
[C#]
string dir = "c:\\temp\\";
// Ladda en DICOM-bild från en filström.
using (System.IO.Stream stream = System.IO.File.OpenRead(dir + "sample.dicom"))
{
using (Aspose.Imaging.FileFormats.Dicom.DicomImage dicomImage = new Aspose.Imaging.FileFormats.Dicom.DicomImage(stream))
{
// Spara varje sida som en individuell PNG-bild.
foreach (Aspose.Imaging.FileFormats.Dicom.DicomPage dicomPage in dicomImage.DicomPages)
{
// Skapa ett filnamn baserat på sidindexet.
string fileName = string.Format("sample.{0}.png", dicomPage.Index);
// En DICOM-sida är en rasterbild, så alla tillåtna operationer med en rasterbild är tillämpliga på en DICOM-sida.
dicomPage.Save(dir + fileName, new Aspose.Imaging.ImageOptions.PngOptions());
}
}
}
Skapa en flersidig Dicom-bild.
[C#]
using (DicomImage image = (DicomImage)Image.Create(
new DicomOptions() { Source = new StreamSource(new MemoryStream()) },
100,
100))
{
// Rita något med vektorgrafik
Graphics graphics = new Graphics(image);
graphics.FillRectangle(new SolidBrush(Color.BlueViolet), image.Bounds);
graphics.FillRectangle(new SolidBrush(Color.Aqua), 10, 20, 50, 20);
graphics.FillEllipse(new SolidBrush(Color.Orange), 30, 50, 70, 30);
// Spara pixlarna i den ritade bilden. De finns nu på första sidan av Dicom-bilden.
int[] pixels = image.LoadArgb32Pixels(image.Bounds);
// Lägg till några sidor efter, vilket gör dem mörkare
for (int i = 1; i < 5; i++)
{
DicomPage page = image.AddPage();
page.SaveArgb32Pixels(page.Bounds, pixels);
page.AdjustBrightness(i * 30);
}
// Lägg till några sidor framför huvudsidan, vilket gör dem ljusare
for (int i = 1; i < 5; i++)
{
DicomPage page = image.InsertPage(0);
page.SaveArgb32Pixels(page.Bounds, pixels);
page.AdjustBrightness(-i * 30);
}
// Spara den skapade flersidiga bilden till utdatafilen
image.Save("MultiPage.dcm");
}
Se även
- class RasterCachedMultipageImage
- interface IMultipageImageExt
- namnutrymme Aspose.Imaging.FileFormats.Dicom
- hopsättning Aspose.Imaging