[PYTHON] Résumé des commandes liées à l'image

import cv2
#Chargement d'image
im = cv2.imread('data/src/lena.jpg')
#Lecture d'images en noir et blanc
im_gray = cv2.imread('data/src/lena.jpg', cv2.IMREAD_GRAYSCALE)
im_gray = cv2.imread('data/src/lena.jpg', 0)

#Conversion d'espace colorimétrique
imrgb = cv2.cvtColor(im_bgr, cv2.COLOR_BGR2RGB)
#Autres conversions
#https://docs.opencv.org/3.4.0/d7/d1b/group__imgproc__misc.html#ga4e0972be5de079fed4e3a10e24ef5ef0

#Affichage de l'image
cv2.imshow('image', im)

#Enregistrer dans un fichier image
cv2.imwrite('data/dst/lena_opencv_red.jpg', im)
#Spécification de qualité d'image enregistrée
cv2.imwrite('data/dst/lena_opencv_red_low.jpg', im, [cv2.IMWRITE_JPEG_QUALITY, 50])

#Acquisition de la taille de l'image
h,w,c = img.shape

#Dessinez une figure sur l'image
cv2.rectangle(img, (50, 150), (125, 200), (0, 0, 255), thickness=-1)
cv2.line(img, (50, 60), (125, 10), (0, 255, 255), thickness=4, lineType=cv2.LINE_AA)
cv2.arrowedLine(img, pt1, pt2, color, thickness=1, lineType=cv2.LINE_8, shift=0, tipLength=0.1)
cv2.circle(img, center, radius, color, thickness=1, lineType=cv2.LINE_8, shift=0)
cv2.circle(img, (240, 35), 20, (0, 0, 0), thickness=3, lineType=cv2.LINE_AA)
cv2.ellipse(img, box, color, thickness=1, lineType=cv2.LINE_8)
cv2.ellipse(img, ((240, 105), (20, 50), 30), (0, 0, 0), thickness=-1)
cv2.ellipse(img, center, axes, angle, startAngle, endAngle, color, thickness=1, lineType=cv2.LINE_8, shift=0)
cv2.ellipse(img, (240, 175), (10, 25), 30, 0, 270, (0, 0, 0), thickness=-1)
cv2.drawMarker(img, position, color, markerType=cv2.MARKER_CROSS, markerSize=20, thickness=1, line_type=cv2.LINE_8)
cv2.drawMarker(img, (337, 20), (0, 255, 0), markerType=cv2.MARKER_TILTED_CROSS, markerSize=15)
cv2.polylines(img, pts, isClosed, color, thickness=1, lineType=cv2.LINE_8, shift=0)
pts = np.array(((300, 80), (300, 130), (335, 130)))
cv2.polylines(img, [pts], True, (255, 255, 255), thickness=2)
cv2.fillPoly(img, pts, color, lineType=cv2.LINE_8, shift=0)
pts = np.array(((335, 80), (375, 80), (375, 130)))
cv2.fillPoly(img, [pts], (0, 0, 0))
cv2.fillConvexPoly(img, pts, (0, 0, 0))
cv.putText(img, text, org, fontFace, fontScale, color, thickness=1, lineType=cv2.LINE_8)
cv2.putText(img, 'test', (300, 170), cv2.FONT_HERSHEY_SIMPLEX, 1.0, (255, 255, 255), thickness=2)
#Entrée japonaise
import numpy as np
from PIL import ImageFont, ImageDraw, Image
#Définissez tous les éléments sur 0 et 200 pour que l'arrière-plan soit noir*500 peuvent stocker 3 valeurs RVB
#Le type de données de l'élément est 8 bits(1byte)Un tableau d'entiers non signés(image de fond)faire.
img = np.zeros((200,500,3),np.uint8)
#Couleur à afficher
b,g,r,a = 0,255,0,0 #B(Bleu)· G(vert)・ R(rouge)· Ah(Transparence)
##MS Gothic Standard
fontpath ='C:\Windows\Fonts\msgothic.ttc' #C pour Windows10:\Windows\Fonts\Voici les polices.
font = ImageFont.truetype(fontpath, 32) #La taille de la police est de 32
img_pil = Image.fromarray(img) #8 bits chaque valeur du tableau(1byte)Type entier(0~255)Vers l'image PIL.
draw = ImageDraw.Draw(img_pil) #Créer une instance de dessin
position = (50, 100) #Position d'affichage du texte
draw.text(position, message, font = font , fill = (b, g, r, a) ) #Écrire du texte dans le remplissage de dessin:Couleur BGRA(RGB)
img = np.array(img_pil) #Convertir PIL en tableau

Mémos informatiques pour les secteurs non informatiques

Recommended Posts

Résumé des commandes liées à l'image
Résumé des commandes Linux
résumé relatif à python
Résumé de la commande Docker
Résumé lié à Kaggle
Résumé relatif au traitement itératif Python
[Linux] Résumé des commandes de base
Rechercher, localiser le résumé de la commande
Résumé de l'image Jupyter Docker
Résumé de la méthode du noyau de Kaggle [Image]
Liste des commandes liées à pyenv pipenv
[Mémo d'apprentissage] Résumé de la commande Django
[Linux] Résumé de la commande utilisateur / groupe
Résumé personnel de Jupyter Notebook Magic Command
[Résumé des commandes Linux] Liste des commandes [À voir absolument pour les débutants]
Fonctionnement Linux pour les débutants Résumé des commandes de base