Implementacja CIEDE2000 w Microsoft Excel
| Liczba wizyt | 854 |
|---|---|
| Liczba przeglądanych plików | 119 + 377 |
Poniżej przedstawiamy arkusz kalkulacyjny Excel, który implementuje różnicę kolorów CIEDE2000 przy użyciu natywnej formuły jednowierszowej, bez potrzeby stosowania makr lub VBA. Implementacja jest potwierdzona naukowo i obejmuje pary testowe dla formuł Gaurava Sharmy i Bruce’a Lindblooma. Łącznie 18 wartości ΔE00 jest obliczanych w oddzielnych wierszach w dwóch tabelach (9 dla Sharma i 9 dla Lindbloom). Formuła uwzględnia przypadki specjalne, na przykład "atan2(0, 0)" jest zarządzana w kolumnach S i T, aby zapewnić spójne zachowanie matematyczne. Algorytm jest solidnie przepisany, a ostateczny wynik CIEDE2000 jest dokładny do co najmniej 10 miejsc po przecinku, co zostało potwierdzone za kulisami przez implementacje w MATLAB (Sharma) i JavaScript (Lindbloom) na 10 000 par kolorów. Współczynniki parametryczne kL, kC i kH (kolumny G, H i I) zostały dokładnie przetestowane i mogą być dostosowywane wiersz po wierszu. Pełna formuła jest przechowywana w ukrytych kolumnach (od L do AM), podczas gdy wynik ΔE2000 pojawia się w kolumnie J. Kolumna K zawiera test statyczny, który musi zostać usunięty po odczytaniu. Kolumna AN (skrajna prawa) jest wyszarzona, aby ułatwić rozszerzenie formuły. Każdy wiersz można kopiować, wklejać lub przesuwać w dół w celu rozszerzenia obliczeń, zachowując przy tym jego autonomię.
Plik jest dostarczany w prostym formacie XLS (Excel 97-2003) i używa tylko znaków ASCII dla maksymalnej kompatybilności. Można z niego korzystać wszędzie tam, gdzie akceptowane są klasyczne pliki Excel, np. w Arkuszach Google. To rozwiązanie kolorymetryczne jest przeznaczone dla profesjonalistów, takich jak Fogra i X-Rite, i oczywiście każdego, kto chce dokładnie i przenośnie ocenić ΔE00.
Dokładność i niezawodność kodu źródłowego
Różnica między akademickim sformułowaniem Sharmy a uproszczonym sformułowaniem Lindblooma nie przekracza ±0,0003 na końcowym ΔE2000. Odpowiada to różnicy zwykle mierzonej między dwiema 32-bitowymi implementacjami i jest niezauważalna dla ludzkiego oka. Nasze 64-bitowe implementacje, wszystkie spójne ze sobą, gwarantują co najmniej 10 poprawnych miejsc po przecinku, więc wybór jednej formuły nad drugą jest szczegółem technicznym. Domyślna formuła na tej stronie jest tą najczęściej prezentowaną w społeczności, jest nieco łatwiejsza do wektoryzacji.
Zakresy wartości w CIELAB i interpretacja ΔE2000
W przestrzeni barw CIELAB składnik L* oznacza jasność i zwykle mieści się w zakresie od 0 (czarny) do 100 (biały). Składniki a* i b* opisują osie barw: a* przechodzi od zielonego do czerwonego, a b* od niebieskiego do żółtego. W praktyce wartości a* i b* mieszczą się najczęściej w przedziale od -128 do +127, choć mogą nieznacznie go przekraczać w zależności od konwersji kolorów.
| Kolor 1 | Kolor 2 | Wartość ΔE2000 |
|---|---|---|
| 1 | ||
| 2 | ||
| 3 |
| Kolor 1 | Kolor 2 | Wartość ΔE2000 |
|---|---|---|
| 5 | ||
| 10 | ||
| 15 |
ΔE2000 (CIEDE2000) określa percepcyjną różnicę między dwoma kolorami: 0 oznacza identyczne kolory, a wyższe wartości (do około 185 w skrajnych przypadkach) wskazują na większą różnicę. Na przykład wartość ΔE2000 około 5 oznacza kolory podobne, natomiast około 15 oznacza kolory wyraźnie różne.
Pliki do pobrania
Zachęcamy do korzystania z tych plików udostępnionych przez Michela, nawet w celach komercyjnych.
| Plik | Rozmiar | Liczba kliknięć |
|---|---|---|
| ciede-2000.xls | 35 KB | 119 |
| reference-dataset.txt | 4 KB | 377 |
| Kliknij xls.zip, aby pobrać wszystkie pliki w archiwum. | ||
Społeczność
Co sądzisz o tym kodzie źródłowym lub CIEDE2000? Twoja opinia jest dla nas ważna! Księga gości zawiera już 9 wiadomości - w tym 1 w języku polskim. Zajrzyj i podziel się swoją opinią.