Effet de luminosité

Utilisez l’effet luminosité pour contrôler la luminosité de l’image.

Le CLSID de cet effet est CLSID _ D2D1Brightness.

Exemple d’image

Avant
image avant l’effet.
After
image après la transformation.
ComPtr<ID2D1Effect> brightnessEffect;
m_d2dContext->CreateEffect(CLSID_D2D1Brightness, &brightnessEffect);

brightnessEffect->SetValue(D2D1_BRIGHTNESS_PROP_BLACK_POINT, D2D1::Vector2F(0.0f, 0.2f));

m_d2dContext->BeginDraw();
m_d2dContext->DrawImage(brightnessEffect.Get());
m_d2dContext->EndDraw();

Propriétés d’effet

Nom complet de la propriété Type et valeur par défaut Description
WhitePoint
_ _ _ Point blanc du prop _ d2d1 de la luminosité
_Vecteur d2d1 _ 2F
{1.0 f, 1.0 f}
Partie supérieure de la courbe de transfert de luminosité. Le point blanc ajuste l’apparence des parties plus claires de l’image. Cette propriété est pour la valeur x et la valeur y, dans cet ordre. Chacune des valeurs de cette propriété est comprise entre 0 et 1 inclus.
BlackPoint
_ _ _ Point noir du prop _ d2d1 de luminosité
_Vecteur d2d1 _ 2F
{0.0 f, 0.0 f}
La partie inférieure de la courbe de transfert de luminosité. Le point noir ajuste l’apparence des parties plus sombres de l’image. Cette propriété est pour la valeur x et la valeur y, dans cet ordre. Chacune des valeurs de cette propriété est comprise entre 0 et 1 inclus.

Cet effet utilise les points noir et blanc spécifiés pour générer une fonction de transfert utilisée pour ajuster l’image bitmap. L’équation suivante décrit la fonction de transfert. Les intensités d’entrée sont définies entre 0 et 1.

algorithme de luminosité

L’algorithme Effect implémente une équation qui crée la fonction de transfert. Nous utilisons cette fonction pour ajuster les pixels de l’image. Les valeurs x et y du point noir et du point blanc sont les coordonnées dans deux dimensions qui sont connectées pour former la transformation. Chaque partie de l’équation de sortie finale :

  1. Convertit les données d’image de l’espace linéaire en espace non linéaire à l’aide de cette équation :fonction d’assistance 1

  2. Ajuste l’image en fonction de ces valeurs :

    • l' entrée correspond aux valeurs d’intensité en pixels de l’image d’entrée de 0 à 1.

    • PT blanc (x, y) emplacement de la courbe de transformation pour des intensités de pixel plus claires.

    • Le point noir (x, y) est l’emplacement de la courbe de transformation pour les intensités de pixel DIMM.

  3. Reconvertit les données de l’image en espace linéaire à l’aide de cette équation : fonction d’assistance 2

L’équation de sortie finale et les parties de composant sont indiquées ici.

calculs complets pour l’ajustement de la luminosité

Bitmap de sortie

La taille de la bitmap de sortie est la même que la taille de la bitmap d’entrée.

Spécifications

Condition requise Valeur
Client minimal pris en charge mise à jour Windows 8 et de plateforme pour les applications de bureau Windows 7 Windows les applications du windows [ | Store]
Serveur minimal pris en charge mise à jour Windows 8 et de plateforme pour les applications de bureau Windows 7 Windows les applications du windows [ | Store]
En-tête d2d1effects. h
Bibliothèque d2d1. lib, dxguid. lib

ID2D1Effect