2017-10-14 1 views
0

Ich lese über lokale Binärmuster und ich habe den folgenden Code, um lokale Binärmuster zu extrahieren.Open cv Speicher Bild und gespeicherte Bild sind unterschiedlich

from skimage import feature 
import cv2 as cv 
img = cv.imread("image.jpg",0) 
lbp = feature.local_binary_pattern(img,8,1,"default") 
cv.imshow("LBP",lbp) 

das Ausgangsbild aussehen wie dieses

enter image description here

dem Originalbild ist
enter image description here
Aber wenn ich Bild speichern und laden mit dem folgenden Code zurück

from skimage import feature 
import cv2 as cv 
img = cv.imread("image.jpg",0) 
lbp = feature.local_binary_pattern(img,8,1,"default") 
cv.imwrite("new_lbp.jpg",lbp) 
newim = cv.imread("new_lbp.jpg",0) 
cv.imshow("new image",newim) 

das Bild sieht so aus.
enter image description here

Warum sieht diese zwei Bilder anders aus? Kann mir irgendein Körper helfen, es zu verstehen?

+0

nicht Bist du während 'cv.imshow verwenden' newim' soll ("neues Bild", img) ' – ZdaR

+0

@ZdaR Ja, du hast recht, ich habe gerade den Code bearbeitet. – Mitiku

+0

Dann müssen sich auch die Ausgänge @Mitiku geändert haben? – ZdaR

Antwort

-2

OpenCV haben einige Probleme während jpg Bilder zu speichern, so dass Sie andere Formate wie BMP können

+0

Es sollte ** png ** nicht ** bng ** sein. –

+0

Ja, aber es sollte bmp –

+0

sein, es könnte irgendein verlustfreies Bildformat sein, aber dies ist nicht der Fall, da die Daten keine Pixelwerte darstellen. – Miki

Verwandte Themen