fügen sie anschließend ein bild ihrer wahl in den grünen hintergrund des bildes ein, ohne den rest des bildes zu verändern. in matlab

Um ein Bild Ihrer Wahl in den grünen Hintergrund eines Bildes einzufügen, ohne den Rest des Bildes zu verändern, können Sie die folgenden Schritte in MATLAB ausführen:

  1. Lesen Sie das Bild des grünen Hintergrunds und das Bild ein, das Sie einfügen möchten.
main.m
background = imread('background_image.png');
image_to_insert = imread('insert_image.png');
91 chars
3 lines
  1. Extrahieren Sie den grünen Kanal vom Hintergrundbild.
main.m
green_channel = background(:,:,2);
35 chars
2 lines
  1. Wenden Sie eine Schwellenwertoperation an, um eine Maske zu erstellen, die den grünen Teil des Hintergrundbilds highlightet.
main.m
mask = green_channel > 100;
28 chars
2 lines
  1. Wenden Sie die Maske auf das Bild an, das Sie einfügen möchten.
main.m
inserted_image = bsxfun(@times, image_to_insert, cast(mask, 'like', image_to_insert));
87 chars
2 lines
  1. Fügen Sie das eingefügte Bild in den grünen Hintergrund ein.
main.m
output_image = background;
output_image(repmat(mask, [1 1 3])) = inserted_image(repmat(mask, [1 1 3]));
104 chars
3 lines
  1. Speichern Sie das resultierende Bild.
main.m
imwrite(output_image, 'output_image.png');
43 chars
2 lines

Beachten Sie, dass diese Methode davon ausgeht, dass der grüne Hintergrund in allen Kanälen des Hintergrundbilds identisch ist. Wenn dies nicht der Fall ist, müssen Sie die Kanäle des Hintergrundbilds getrennt verarbeiten.

related categories

gistlibby LogSnag