2016-07-30 28 views
1

Ich muss ein Rechteck in ein Bild zeichnen, dann möchte ich den gesamten Bereich außerhalb des Rechtecks ​​(das durch den orangefarbenen AirBrush ausgefüllt wurde) auf Schwarz setzen und die Bearbeitung speichern!Rechteck in einem Bild zeichnen - Matlab

Hier ist mein Code:

%Draw rectangle 
shapeInserter = vision.ShapeInserter; 
rectangle = int32([100 100 800 800]); 
J = step(shapeInserter, imageA , rectangle); 
imshow(J); 

enter image description here

Ich habe nur das Rechteck gezeichnet, ohne eine Vorstellung meiner Arbeit zu vervollständigen, jede mögliche Hilfe?

Bildgröße ist 1000x1000.

+0

Versuchen Sie dies: 'set (Achsen, 'Farbe' [0 0 0])' –

+0

nicht, dass es das Rechteck füllen! auch mit Zahlen zu x und y axies hinzufügen! –

+0

Warum nicht das Rechteck hinzufügen, nachdem Sie alles schwarz ausgefüllt haben? – EBH

Antwort

4
RickRoll = rgb2gray(imread('Rick-Roll3.png')); % 800x800 image 
I = zeros ([1000, 1000]); 
I(101:100+800, 101:100+800) = RickRoll; 

enter image description here

+0

Und wenn du das nicht meintest, dann musst du deine Frage besser formulieren. –

+0

Ich brauche das Originalbild, das in der Rect liegt. , keine weiße Farbe! –

+0

ok, behoben. Jetzt prüfen. –