


Implementierung von Bildfusion, Additionsoperation und Bildtypkonvertierung in Python (mit Code)
Was Ihnen dieser Artikel bringt, ist die Implementierung der Bildfusion, der Additionsoperation und der Bildtypkonvertierung in Python (mit Code). Ich hoffe, dass er einen gewissen Referenzwert hat wird dir helfen.
1. Bildadditionsoperation
1. Numpy-Bibliotheksaddition
Die Operationsmethode ist: Zielbild = Bild 1 + Bild 2, und das Operationsergebnis ist Modulo-Operation übernommen.
1) Wenn der Pixelwert 2) Wenn der Pixelwert >255 ist, ist das Ergebnis ist Modulo 255 Das Ergebnis, zum Beispiel: (255+64)%255=64
2. OpenCV-Additionsoperation
Eine andere Methode besteht darin, die OpenCV-Bibliothek direkt aufzurufen, um das Bild zu implementieren Additionsoperation. Die Methode ist wie folgt:
Zielbild = cv2.add(Bild 1, Bild 2)
Das Ergebnis ist zu diesem Zeitpunkt eine Sättigungsoperation, das heißt:
1) Wenn der Pixelwert 2) Wenn der Pixelwert > 255 ist, ist das Ergebnis 255, zum Beispiel: (255+64) = 255
Die entsprechenden Codes für die beiden Methoden lauten wie folgt. Anzeige:
#encoding:utf-8import cv2 import numpy as np import matplotlib.pyplot as plt#读取图片img = cv2.imread('picture.bmp') test = img #方法一: Numpy加法运算result1 = img + test #方法二: OpenCV加法运算result2 = cv2.add(img, test) #显示图像 cv2.imshow("original", img) cv2.imshow("result1", result1) cv2.imshow("result2", result2) #等待显示 cv2.waitKey(0) cv2.destroyAllWindows()
Das Ausgabeergebnis ist in der folgenden Abbildung dargestellt, wobei Ergebnis1 die erste Methode und Ergebnis2 die zweite Methode ist sind mehr Weißpunkte 255.

Hinweis: Größe und Art der in den Vorgang einbezogenen Bilder müssen konsistent sein. Unten sehen Sie das Ergebnis des Hinzufügens der Farbbilder.

2. Bildfusion
Bildfusion bezieht sich normalerweise auf das Zusammenführen von zwei oder mehr Bildinformationen zu einem. In Bezug auf Bilder wird es zusammengeführt Bilder enthalten mehr Informationen und können für Menschen bequemer zu beobachten oder für die Computerverarbeitung geeignet sein. Wie in der folgenden Abbildung dargestellt, werden zwei unklare Bilder zusammengeführt, um ein klareres Bild zu erhalten.

Bildfusion fügt Koeffizienten und Helligkeitsanpassungen basierend auf der Bildaddition hinzu.
1) Bildaddition: Zielbild = Bild 1 + Bild 2
2) Bildfusion: Zielbild = Bild 1 * Koeffizient 1 + Bild 2 * Koeffizient 2 + Helligkeitsanpassungsbetrag
Die aufgerufene Hauptfunktion ist addWeighted, die Methode lautet wie folgt:
dst = cv2.addWeighter(scr1, alpha, src2, beta, gamma)
dst = src1 * alpha + src2 * beta + gamma
Der Parameter Gamma kann nicht weggelassen werden.
Der Code lautet wie folgt:
#encoding:utf-8import cv2 import numpy as np import matplotlib.pyplot as plt #读取图片 src1 = cv2.imread('test22.jpg') src2 = cv2.imread('picture.bmp') #图像融合 result = cv2.addWeighted(src1, 1, src2, 1, 0) #显示图像 cv2.imshow("src1", src1) cv2.imshow("src2", src2) cv2.imshow("result", result) #等待显示 cv2.waitKey(0) cv2.destroyAllWindows()
Es ist zu beachten, dass die Pixelgröße der beiden fusionierten Bilder gleich sein muss. Wie in der Abbildung unten gezeigt, sind es zwei RGB-Bilder mit Pixeln von 410*410 sind verschmolzen.

Stellen Sie verschiedene Anteile der Fusion wie folgt ein:
result = cv2.addWeighted(src1, 0.6, src2, 0.8, 10)

3. Bildtypkonvertierung
Bildtypkonvertierung bezieht sich auf die Konvertierung eines Typs in einen anderen Typ, z. B. die Konvertierung eines Farbbilds in ein Graustufenbild, BGR konvertieren Bilder in RGB-Bilder umwandeln. OPenCV bietet Konvertierungen zwischen mehr als 200 verschiedenen Typen, von denen die am häufigsten verwendeten drei Kategorien umfassen:
cv2.COLOR_BGR2GRAY
cv2.COLOR_BGR2RGB
cv2.COLOR_GRAY2BGR
Der Code lautet wie folgt:
#encoding:utf-8import cv2 import numpy as np import matplotlib.pyplot as plt #读取图片 src = cv2.imread('01.bmp') #图像类型转换 result = cv2.cvtColor(src, cv2.COLOR_BGR2GRAY) #显示图像 cv2.imshow("src", src) cv2.imshow("result", result) #等待显示 cv2.waitKey(0) cv2.destroyAllWindows()
Das Ausgabeergebnis ist wie unten dargestellt :

Wenn die Kanalkonvertierung verwendet wird, sieht das Ergebnis wie folgt aus:
result = cv2.cvtColor(src, cv2.COLOR_BGR2RGB)

Die Bildverarbeitung erfordert normalerweise die Konvertierung von Farbbildern in Graustufenbilder, bevor weitere Vorgänge vorgenommen werden. Ich hoffe, dass es Ihnen gefällt. Vor allem ich bin ein Klassenkamerad, der sich mit Bilderkennung und Bildverarbeitung beschäftigt.
Verwandte Empfehlungen:
Python implementiert die geometrische Bildtransformation
Python-Bild-Graustufentransformation und Bildarray-Operation
Das obige ist der detaillierte Inhalt vonImplementierung von Bildfusion, Additionsoperation und Bildtypkonvertierung in Python (mit Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

PHP ist hauptsächlich prozedurale Programmierung, unterstützt aber auch die objektorientierte Programmierung (OOP). Python unterstützt eine Vielzahl von Paradigmen, einschließlich OOP, funktionaler und prozeduraler Programmierung. PHP ist für die Webentwicklung geeignet, und Python eignet sich für eine Vielzahl von Anwendungen wie Datenanalyse und maschinelles Lernen.

PHP eignet sich für Webentwicklung und schnelles Prototyping, und Python eignet sich für Datenwissenschaft und maschinelles Lernen. 1.PHP wird für die dynamische Webentwicklung verwendet, mit einfacher Syntax und für schnelle Entwicklung geeignet. 2. Python hat eine kurze Syntax, ist für mehrere Felder geeignet und ein starkes Bibliotheksökosystem.

Python eignet sich besser für Anfänger mit einer reibungslosen Lernkurve und einer kurzen Syntax. JavaScript ist für die Front-End-Entwicklung mit einer steilen Lernkurve und einer flexiblen Syntax geeignet. 1. Python-Syntax ist intuitiv und für die Entwicklung von Datenwissenschaften und Back-End-Entwicklung geeignet. 2. JavaScript ist flexibel und in Front-End- und serverseitiger Programmierung weit verbreitet.

Im VS -Code können Sie das Programm im Terminal in den folgenden Schritten ausführen: Erstellen Sie den Code und öffnen Sie das integrierte Terminal, um sicherzustellen, dass das Codeverzeichnis mit dem Terminal Working -Verzeichnis übereinstimmt. Wählen Sie den Befehl aus, den Befehl ausführen, gemäß der Programmiersprache (z. B. Pythons Python your_file_name.py), um zu überprüfen, ob er erfolgreich ausgeführt wird, und Fehler auflösen. Verwenden Sie den Debugger, um die Debugging -Effizienz zu verbessern.

VS -Code kann unter Windows 8 ausgeführt werden, aber die Erfahrung ist möglicherweise nicht großartig. Stellen Sie zunächst sicher, dass das System auf den neuesten Patch aktualisiert wurde, und laden Sie dann das VS -Code -Installationspaket herunter, das der Systemarchitektur entspricht und sie wie aufgefordert installiert. Beachten Sie nach der Installation, dass einige Erweiterungen möglicherweise mit Windows 8 nicht kompatibel sind und nach alternativen Erweiterungen suchen oder neuere Windows -Systeme in einer virtuellen Maschine verwenden müssen. Installieren Sie die erforderlichen Erweiterungen, um zu überprüfen, ob sie ordnungsgemäß funktionieren. Obwohl VS -Code unter Windows 8 möglich ist, wird empfohlen, auf ein neueres Windows -System zu upgraden, um eine bessere Entwicklungserfahrung und Sicherheit zu erzielen.

VS -Code -Erweiterungen stellen böswillige Risiken dar, wie das Verstecken von böswilligem Code, das Ausbeutetieren von Schwachstellen und das Masturbieren als legitime Erweiterungen. Zu den Methoden zur Identifizierung böswilliger Erweiterungen gehören: Überprüfung von Verlegern, Lesen von Kommentaren, Überprüfung von Code und Installation mit Vorsicht. Zu den Sicherheitsmaßnahmen gehören auch: Sicherheitsbewusstsein, gute Gewohnheiten, regelmäßige Updates und Antivirensoftware.

VS -Code kann zum Schreiben von Python verwendet werden und bietet viele Funktionen, die es zu einem idealen Werkzeug für die Entwicklung von Python -Anwendungen machen. Sie ermöglichen es Benutzern: Installation von Python -Erweiterungen, um Funktionen wie Code -Abschluss, Syntax -Hervorhebung und Debugging zu erhalten. Verwenden Sie den Debugger, um Code Schritt für Schritt zu verfolgen, Fehler zu finden und zu beheben. Integrieren Sie Git für die Versionskontrolle. Verwenden Sie Tools für die Codeformatierung, um die Codekonsistenz aufrechtzuerhalten. Verwenden Sie das Lining -Tool, um potenzielle Probleme im Voraus zu erkennen.

PHP entstand 1994 und wurde von Rasmuslerdorf entwickelt. Es wurde ursprünglich verwendet, um Website-Besucher zu verfolgen und sich nach und nach zu einer serverseitigen Skriptsprache entwickelt und in der Webentwicklung häufig verwendet. Python wurde Ende der 1980er Jahre von Guidovan Rossum entwickelt und erstmals 1991 veröffentlicht. Es betont die Lesbarkeit und Einfachheit der Code und ist für wissenschaftliche Computer, Datenanalysen und andere Bereiche geeignet.
