Class AssumedObjectData
ja nimityö: Aspose.Imaging.Masking.Options Kokoelma: Aspose.Imaging.dll (25.5.0)
Esitetyn kohteen tiedot. Sisältää esineen tyypin ja alueen.
public class AssumedObjectDataInheritance
Perintöjäsenet
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Examples
Säästää kuvan naamioinnin tuloksen kuvakokoon perustuvalla peittämisellä. Kuvan maskointi suoritetaan automaattisesti laskettujen oletusarvojen avulla. Lisäksi kaksi oletettavaa objektia koskevat tiedot on myös määritelty AssumedObjects omistuksessa AutoMaskingGraphCutOptions.
List<assumedobjectdata> assumedObjects = new List<assumedobjectdata>();
                                                                                                                                                                                                                                                                                  assumedObjects.Add(new AssumedObjectData(DetectedObjectType.Human, new Rectangle(100, 100, 150, 300)));
                                                                                                                                                                                                                                                                                  assumedObjects.Add(new AssumedObjectData(DetectedObjectType.Dog, new Rectangle(300, 100, 50, 30)));
                                                                                                                                                                                                                                                                                  MaskingResult[] results;
                                                                                                                                                                                                                                                                                  using (RasterImage image = (RasterImage)Image.Load("input.jpg"))
                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                      AutoMaskingGraphCutOptions options = new AutoMaskingGraphCutOptions
                                                                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                                                                      AssumedObjects = assumedObjects,
                                                                                                                                                                                                                                                                                                                                      CalculateDefaultStrokes = true,
                                                                                                                                                                                                                                                                                                                                      FeatheringRadius = (Math.Max(image.Width, image.Height) / 500) + 1,
                                                                                                                                                                                                                                                                                                                                      Method = SegmentationMethod.GraphCut,
                                                                                                                                                                                                                                                                                                                                      Decompose = false,
                                                                                                                                                                                                                                                                                                                                      ExportOptions =
                                                                                                                                                                                                                                                                                                                                          new PngOptions()
                                                                                                                                                                                                                                                                                                                                              {
                                                                                                                                                                                                                                                                                                                                                  ColorType = PngColorType.TruecolorWithAlpha,
                                                                                                                                                                                                                                                                                                                                                  Source = new FileCreateSource("tempFile")
                                                                                                                                                                                                                                                                                                                                              },
                                                                                                                                                                                                                                                                                                                                      BackgroundReplacementColor = Color.Transparent
                                                                                                                                                                                                                                                                                      };
                                                                                                                                                                                                                                                                                      results = new ImageMasking(image).Decompose(options);
                                                                                                                                                                                                                                                                                  }
                                                                                                                                                                                                                                                                                  using (RasterImage resultImage = (RasterImage)results[1].GetImage())
                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                      resultImage.Save("output.png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
                                                                                                                                                                                                                                                                                  }</assumedobjectdata></assumedobjectdata>Säästää kuvan naamioinnin tulos kuvakokoon ja uudelleen käyttämällä naamion vaihtoehtoja uusille naamioon iteraatioille. Kuvakäsittely suoritetaan automaattisesti laskettujen oletusarvoisten hyökkäysten avulla. Lisäksi kaksi oletettavaa objektia on myös määritelty AssumedObjects ominaisuudessa AutoMaskingGraphCutOptions. Saavuttuaan alkuperäisen masking tuloksen, sovellettu taustakuva / eturauhankkeita muokataan ja toinen maskiointi iteratio toteutetaan.
List<assumedobjectdata> assumedObjects = new List<assumedobjectdata>();
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  assumedObjects.Add(new AssumedObjectData(DetectedObjectType.Human, new Rectangle(100, 100, 150, 300)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  assumedObjects.Add(new AssumedObjectData(DetectedObjectType.Dog, new Rectangle(300, 100, 50, 30)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  MaskingResult[] results;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  AutoMaskingGraphCutOptions options;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  using (RasterImage image = (RasterImage)Image.Load("input.jpg"))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      options = new AutoMaskingGraphCutOptions
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          AssumedObjects = assumedObjects,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          CalculateDefaultStrokes = true,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          FeatheringRadius = 3,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Method = SegmentationMethod.GraphCut,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Decompose = false,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          ExportOptions =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              new PngOptions()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ColorType = PngColorType.TruecolorWithAlpha,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Source = new FileCreateSource("tempFile")
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  },
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          BackgroundReplacementColor = Color.Transparent
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      };
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      results = new ImageMasking(image).Decompose(options);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  // At this point applied foreground/background strokes can be analyzed and based on it additional 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  // foreground/background strokes can be manually provided.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  Point[] appliedBackgroundStrokes = options.DefaultBackgroundStrokes;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  Point[] appliedForegroundStrokes = options.DefaultForegroundStrokes;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  Rectangle[] appliedObjectRectangles = options.DefaultObjectsRectangles;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  using (RasterImage resultImage = (RasterImage)results[1].GetImage())
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      resultImage.Save("output.png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  using (RasterImage image = (RasterImage)Image.Load("input.jpg"))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      // Re-using AutoMaskingGraphCutOptions there is no need to perform default strokes calculations second time.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      options.CalculateDefaultStrokes = false;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      // When both default strokes and ObjectsPoints in the Args property of AutoMaskingArgs are provided, Point arrays are end up combined.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      // The first ObjectsPoints array is considered to be a background points array and 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      // the second ObjectsPoints array is considered to be a foreground points array.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      // When both DefaultObjectsRectangles and ObjectsRectangles in the Args property of AutoMaskingArgs are provided, 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      // only the array from the Args is being used.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      options.Args = new AutoMaskingArgs()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ObjectsPoints = new Point[][]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      new Point[] { new Point(100, 100), new Point(150, 100) }, 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      new Point[] { new Point(500, 200) }, 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  },
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ObjectsRectangles = new Rectangle[]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          new Rectangle(100, 100, 300, 300), 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          };
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      results = new ImageMasking(image).Decompose(options);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  using (RasterImage resultImage = (RasterImage)results[1].GetImage())
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      resultImage.Save("output.png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  }</assumedobjectdata></assumedobjectdata>Säästää kuvan naamioinnin tuloksen kuvakokoon perustuvalla peittämällä, muokkaamalla saatuja oletusarvoisia hyökkäyksiä ja käyttämällä sitä uudelle naamion iteraatiolle. Kuvakäsittely suoritetaan automaattisesti laskettujen varmuuskopiointien avulla. Lisäksi kaksi oletettavaa objektia koskevat tiedot on myös määritelty AssumedObjects omistuksessa AutoMaskingGraphCutOptions. Saavuttuaan alkuperäisen masking-tuloksen, sovellettuja taustakuva / etuusihoitoja muutetaan ja toinen naamionaatio toteutetaan käyttämään uutta GraphCotMaskin vaihtoehtoja.
List<assumedobjectdata> assumedObjects = new List<assumedobjectdata>();
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                assumedObjects.Add(new AssumedObjectData(DetectedObjectType.Human, new Rectangle(100, 100, 150, 300)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                assumedObjects.Add(new AssumedObjectData(DetectedObjectType.Dog, new Rectangle(300, 100, 50, 30)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                MaskingResult[] results;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                AutoMaskingGraphCutOptions options;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                using (RasterImage image = (RasterImage)Image.Load("input.jpg"))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    options = new AutoMaskingGraphCutOptions
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        AssumedObjects = assumedObjects,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        CalculateDefaultStrokes = true,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        FeatheringRadius = 3,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        Method = SegmentationMethod.GraphCut,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        Decompose = false,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ExportOptions =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            new PngOptions()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ColorType = PngColorType.TruecolorWithAlpha,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    Source = new FileCreateSource("tempFile")
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                },
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        BackgroundReplacementColor = Color.Transparent
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    };
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    results = new ImageMasking(image).Decompose(options);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                // At this point applied foreground/background strokes can be analyzed and based on it additional 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                // foreground/background strokes can be manually provided.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Point[] appliedBackgroundStrokes = options.DefaultBackgroundStrokes;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Point[] appliedForegroundStrokes = options.DefaultForegroundStrokes;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Rectangle[] appliedObjectRectangles = options.DefaultObjectsRectangles;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                using (RasterImage resultImage = (RasterImage)results[1].GetImage())
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    resultImage.Save("output.png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                appliedBackgroundStrokes[5] = new Point(100, 100);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                appliedBackgroundStrokes[15] = new Point(150, 100);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                appliedForegroundStrokes[1] = new Point(500, 200);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                appliedObjectRectangles[0] = new Rectangle(100, 100, 300, 300);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                using (RasterImage image = (RasterImage)Image.Load("input.jpg"))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    GraphCutMaskingOptions graphCutOptions = new GraphCutMaskingOptions()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        FeatheringRadius = 3,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        Method = SegmentationMethod.GraphCut,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        Decompose = false,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ExportOptions = new PngOptions()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ColorType = PngColorType.TruecolorWithAlpha,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Source = new FileCreateSource("tempFile")
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            },
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        BackgroundReplacementColor = Color.Transparent,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        Args = new AutoMaskingArgs()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ObjectsPoints = new Point[][]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            appliedBackgroundStrokes,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            appliedForegroundStrokes
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        },
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ObjectsRectangles = appliedObjectRectangles
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    };
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    results = new ImageMasking(image).Decompose(graphCutOptions);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                using (RasterImage resultImage = (RasterImage)results[1].GetImage())
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    resultImage.Save("output.png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                }</assumedobjectdata></assumedobjectdata>Constructors
AssumedObjectData()
Aloita uusi esimerkki Aspose.Imaging.Masking.Options.AssumedObjectData luokan.
public AssumedObjectData()AssumedObjectData(Tyylityyppi, rectangle)
Aloita uusi esimerkki Aspose.Imaging.Masking.Options.AssumedObjectData luokan.
public AssumedObjectData(DetectedObjectType type, Rectangle bounds)Parameters
type DetectedObjectType
esineen tyyppiä.
bounds Rectangle
Objektiivin rajat ovat.
Examples
Säästää kuvan naamioinnin tuloksen kuvakokoon perustuvalla peittämisellä. Kuvan maskointi suoritetaan automaattisesti laskettujen oletusarvojen avulla. Lisäksi kaksi oletettavaa objektia koskevat tiedot on myös määritelty AssumedObjects omistuksessa AutoMaskingGraphCutOptions.
List<assumedobjectdata> assumedObjects = new List<assumedobjectdata>();
                                                                                                                                                                                                                                                                                  assumedObjects.Add(new AssumedObjectData(DetectedObjectType.Human, new Rectangle(100, 100, 150, 300)));
                                                                                                                                                                                                                                                                                  assumedObjects.Add(new AssumedObjectData(DetectedObjectType.Dog, new Rectangle(300, 100, 50, 30)));
                                                                                                                                                                                                                                                                                  MaskingResult[] results;
                                                                                                                                                                                                                                                                                  using (RasterImage image = (RasterImage)Image.Load("input.jpg"))
                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                      AutoMaskingGraphCutOptions options = new AutoMaskingGraphCutOptions
                                                                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                                                                      AssumedObjects = assumedObjects,
                                                                                                                                                                                                                                                                                                                                      CalculateDefaultStrokes = true,
                                                                                                                                                                                                                                                                                                                                      FeatheringRadius = (Math.Max(image.Width, image.Height) / 500) + 1,
                                                                                                                                                                                                                                                                                                                                      Method = SegmentationMethod.GraphCut,
                                                                                                                                                                                                                                                                                                                                      Decompose = false,
                                                                                                                                                                                                                                                                                                                                      ExportOptions =
                                                                                                                                                                                                                                                                                                                                          new PngOptions()
                                                                                                                                                                                                                                                                                                                                              {
                                                                                                                                                                                                                                                                                                                                                  ColorType = PngColorType.TruecolorWithAlpha,
                                                                                                                                                                                                                                                                                                                                                  Source = new FileCreateSource("tempFile")
                                                                                                                                                                                                                                                                                                                                              },
                                                                                                                                                                                                                                                                                                                                      BackgroundReplacementColor = Color.Transparent
                                                                                                                                                                                                                                                                                      };
                                                                                                                                                                                                                                                                                      results = new ImageMasking(image).Decompose(options);
                                                                                                                                                                                                                                                                                  }
                                                                                                                                                                                                                                                                                  using (RasterImage resultImage = (RasterImage)results[1].GetImage())
                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                      resultImage.Save("output.png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
                                                                                                                                                                                                                                                                                  }</assumedobjectdata></assumedobjectdata>Säästää kuvan naamioinnin tulos kuvakokoon ja uudelleen käyttämällä naamion vaihtoehtoja uusille naamioon iteraatioille. Kuvakäsittely suoritetaan automaattisesti laskettujen oletusarvoisten hyökkäysten avulla. Lisäksi kaksi oletettavaa objektia on myös määritelty AssumedObjects ominaisuudessa AutoMaskingGraphCutOptions. Saavuttuaan alkuperäisen masking tuloksen, sovellettu taustakuva / eturauhankkeita muokataan ja toinen maskiointi iteratio toteutetaan.
List<assumedobjectdata> assumedObjects = new List<assumedobjectdata>();
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  assumedObjects.Add(new AssumedObjectData(DetectedObjectType.Human, new Rectangle(100, 100, 150, 300)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  assumedObjects.Add(new AssumedObjectData(DetectedObjectType.Dog, new Rectangle(300, 100, 50, 30)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  MaskingResult[] results;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  AutoMaskingGraphCutOptions options;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  using (RasterImage image = (RasterImage)Image.Load("input.jpg"))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      options = new AutoMaskingGraphCutOptions
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          AssumedObjects = assumedObjects,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          CalculateDefaultStrokes = true,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          FeatheringRadius = 3,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Method = SegmentationMethod.GraphCut,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          Decompose = false,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          ExportOptions =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              new PngOptions()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ColorType = PngColorType.TruecolorWithAlpha,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Source = new FileCreateSource("tempFile")
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  },
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          BackgroundReplacementColor = Color.Transparent
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      };
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      results = new ImageMasking(image).Decompose(options);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  // At this point applied foreground/background strokes can be analyzed and based on it additional 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  // foreground/background strokes can be manually provided.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  Point[] appliedBackgroundStrokes = options.DefaultBackgroundStrokes;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  Point[] appliedForegroundStrokes = options.DefaultForegroundStrokes;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  Rectangle[] appliedObjectRectangles = options.DefaultObjectsRectangles;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  using (RasterImage resultImage = (RasterImage)results[1].GetImage())
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      resultImage.Save("output.png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  using (RasterImage image = (RasterImage)Image.Load("input.jpg"))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      // Re-using AutoMaskingGraphCutOptions there is no need to perform default strokes calculations second time.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      options.CalculateDefaultStrokes = false;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      // When both default strokes and ObjectsPoints in the Args property of AutoMaskingArgs are provided, Point arrays are end up combined.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      // The first ObjectsPoints array is considered to be a background points array and 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      // the second ObjectsPoints array is considered to be a foreground points array.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      // When both DefaultObjectsRectangles and ObjectsRectangles in the Args property of AutoMaskingArgs are provided, 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      // only the array from the Args is being used.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      options.Args = new AutoMaskingArgs()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ObjectsPoints = new Point[][]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      new Point[] { new Point(100, 100), new Point(150, 100) }, 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      new Point[] { new Point(500, 200) }, 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  },
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ObjectsRectangles = new Rectangle[]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          new Rectangle(100, 100, 300, 300), 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          };
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      results = new ImageMasking(image).Decompose(options);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  using (RasterImage resultImage = (RasterImage)results[1].GetImage())
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      resultImage.Save("output.png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  }</assumedobjectdata></assumedobjectdata>Säästää kuvan naamioinnin tuloksen kuvakokoon perustuvalla peittämällä, muokkaamalla saatuja oletusarvoisia hyökkäyksiä ja käyttämällä sitä uudelle naamion iteraatiolle. Kuvakäsittely suoritetaan automaattisesti laskettujen varmuuskopiointien avulla. Lisäksi kaksi oletettavaa objektia koskevat tiedot on myös määritelty AssumedObjects omistuksessa AutoMaskingGraphCutOptions. Saavuttuaan alkuperäisen masking-tuloksen, sovellettuja taustakuva / etuusihoitoja muutetaan ja toinen naamionaatio toteutetaan käyttämään uutta GraphCotMaskin vaihtoehtoja.
List<assumedobjectdata> assumedObjects = new List<assumedobjectdata>();
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                assumedObjects.Add(new AssumedObjectData(DetectedObjectType.Human, new Rectangle(100, 100, 150, 300)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                assumedObjects.Add(new AssumedObjectData(DetectedObjectType.Dog, new Rectangle(300, 100, 50, 30)));
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                MaskingResult[] results;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                AutoMaskingGraphCutOptions options;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                using (RasterImage image = (RasterImage)Image.Load("input.jpg"))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    options = new AutoMaskingGraphCutOptions
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        AssumedObjects = assumedObjects,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        CalculateDefaultStrokes = true,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        FeatheringRadius = 3,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        Method = SegmentationMethod.GraphCut,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        Decompose = false,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ExportOptions =
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            new PngOptions()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ColorType = PngColorType.TruecolorWithAlpha,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    Source = new FileCreateSource("tempFile")
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                },
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        BackgroundReplacementColor = Color.Transparent
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    };
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    results = new ImageMasking(image).Decompose(options);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                // At this point applied foreground/background strokes can be analyzed and based on it additional 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                // foreground/background strokes can be manually provided.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Point[] appliedBackgroundStrokes = options.DefaultBackgroundStrokes;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Point[] appliedForegroundStrokes = options.DefaultForegroundStrokes;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Rectangle[] appliedObjectRectangles = options.DefaultObjectsRectangles;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                using (RasterImage resultImage = (RasterImage)results[1].GetImage())
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    resultImage.Save("output.png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                appliedBackgroundStrokes[5] = new Point(100, 100);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                appliedBackgroundStrokes[15] = new Point(150, 100);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                appliedForegroundStrokes[1] = new Point(500, 200);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                appliedObjectRectangles[0] = new Rectangle(100, 100, 300, 300);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                using (RasterImage image = (RasterImage)Image.Load("input.jpg"))
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    GraphCutMaskingOptions graphCutOptions = new GraphCutMaskingOptions()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        FeatheringRadius = 3,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        Method = SegmentationMethod.GraphCut,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        Decompose = false,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ExportOptions = new PngOptions()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ColorType = PngColorType.TruecolorWithAlpha,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Source = new FileCreateSource("tempFile")
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            },
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        BackgroundReplacementColor = Color.Transparent,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        Args = new AutoMaskingArgs()
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ObjectsPoints = new Point[][]
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            appliedBackgroundStrokes,
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            appliedForegroundStrokes
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        },
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ObjectsRectangles = appliedObjectRectangles
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    };
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    results = new ImageMasking(image).Decompose(graphCutOptions);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                using (RasterImage resultImage = (RasterImage)results[1].GetImage())
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    resultImage.Save("output.png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                }</assumedobjectdata></assumedobjectdata>AssumedObjectData(Reikiä, reikiä)
Aloita uusi esimerkki Aspose.Imaging.Masking.Options.AssumedObjectData luokan.
public AssumedObjectData(string type, Rectangle bounds)Parameters
type string
esineen tyyppiä.
bounds Rectangle
Objektiivin rajat ovat.
Properties
Bounds
Kohtaa tai asettaa kohteen rajat.
public Rectangle Bounds { get; set; }Omistuksen arvo
Type
Se saa tai asettaa kohteen tyypin.
public DetectedObjectType Type { get; set; }