Low Contrast Ratio Detection

This example shows how to detect low contrast ratio in an image using the accessiplot.detection.contrast_ratio module.

example contrast ratio
contrast_ratios_by_index: {'_child0_---__child0': 1.0, '_child0_---__child1': 1.9040396041710697, '_child0_---__child2': 1.4168312890382477, '_child0_---__child3': 1.0420980213864404, '_child0_---__child4': 1.1327015819803465, '_child0_---__child5': 1.227815191839397, '_child0_---__child6': 1.7639648250875561, '_child0_---__child7': 1.2039843979694074, '_child0_---__child8': 2.3967613887668797, '_child0_---__child9': 2.135607876861989, '_child0_---_BACKGROUND': 4.820882303565048, '_child1_---__child0': 1.9040396041710697, '_child1_---__child1': 1.0, '_child1_---__child2': 1.3438717925713946, '_child1_---__child3': 1.9841959041480925, '_child1_---__child4': 1.6809719651332722, '_child1_---__child5': 2.337808751865111, '_child1_---__child6': 1.0794090545861994, '_child1_---__child7': 1.5814487358659695, '_child1_---__child8': 1.2587770671977794, '_child1_---__child9': 1.1216194622126747, '_child1_---_BACKGROUND': 2.5319233344748815, '_child2_---__child0': 1.4168312890382477, '_child2_---__child1': 1.3438717925713946, '_child2_---__child2': 1.0, '_child2_---__child3': 1.4764770829451577, '_child2_---__child4': 1.2508425092522129, '_child2_---__child5': 1.7396069809545562, '_child2_---__child6': 1.2450069664151364, '_child2_---__child7': 1.1767854229903805, '_child2_---__child8': 1.6916349937428425, '_child2_---__child9': 1.5073127572667107, '_child2_---_BACKGROUND': 3.4025803501541017, '_child3_---__child0': 1.0420980213864404, '_child3_---__child1': 1.9841959041480925, '_child3_---__child2': 1.4764770829451577, '_child3_---__child3': 1.0, '_child3_---__child4': 1.18038607740301, '_child3_---__child5': 1.1782146848392174, '_child3_---__child6': 1.8382242540190206, '_child3_---__child7': 1.254669758904064, '_child3_---__child8': 2.497660300969382, '_child3_---__child9': 2.2255127429351753, '_child3_---_BACKGROUND': 5.023831909882041, '_child4_---__child0': 1.1327015819803465, '_child4_---__child1': 1.6809719651332722, '_child4_---__child2': 1.2508425092522129, '_child4_---__child3': 1.18038607740301, '_child4_---__child4': 1.0, '_child4_---__child5': 1.3907482101759876, '_child4_---__child6': 1.5573076379071946, '_child4_---__child7': 1.0629316822039165, '_child4_---__child8': 2.1159689603121485, '_child4_---__child9': 1.8854108715273639, '_child4_---_BACKGROUND': 4.256092143119029, '_child5_---__child0': 1.227815191839397, '_child5_---__child1': 2.337808751865111, '_child5_---__child2': 1.7396069809545562, '_child5_---__child3': 1.1782146848392174, '_child5_---__child4': 1.3907482101759876, '_child5_---__child5': 1.0, '_child5_---__child6': 2.165822810112826, '_child5_---__child7': 1.4782703345644488, '_child5_---__child8': 2.942780044342066, '_child5_---__child9': 2.62213179502303, '_child5_---_BACKGROUND': 5.9191525303868735, '_child6_---__child0': 1.7639648250875561, '_child6_---__child1': 1.0794090545861994, '_child6_---__child2': 1.2450069664151364, '_child6_---__child3': 1.8382242540190206, '_child6_---__child4': 1.5573076379071946, '_child6_---__child5': 2.165822810112826, '_child6_---__child6': 1.0, '_child6_---__child7': 1.4651060495988069, '_child6_---__child8': 1.3587353640387438, '_child6_---__child9': 1.2106862033124646, '_child6_---_BACKGROUND': 2.732980972750269, '_child7_---__child0': 1.2039843979694074, '_child7_---__child1': 1.5814487358659695, '_child7_---__child2': 1.1767854229903805, '_child7_---__child3': 1.254669758904064, '_child7_---__child4': 1.0629316822039165, '_child7_---__child5': 1.4782703345644488, '_child7_---__child6': 1.4651060495988069, '_child7_---__child7': 1.0, '_child7_---__child8': 1.9906914016570008, '_child7_---__child9': 1.773783680638903, '_child7_---_BACKGROUND': 4.0041069566148515, '_child8_---__child0': 2.3967613887668797, '_child8_---__child1': 1.2587770671977794, '_child8_---__child2': 1.6916349937428425, '_child8_---__child3': 2.497660300969382, '_child8_---__child4': 2.1159689603121485, '_child8_---__child5': 2.942780044342066, '_child8_---__child6': 1.3587353640387438, '_child8_---__child7': 1.9906914016570008, '_child8_---__child8': 1.0, '_child8_---__child9': 1.1222853290317618, '_child8_---_BACKGROUND': 2.011415206436284, '_child9_---__child0': 2.135607876861989, '_child9_---__child1': 1.1216194622126747, '_child9_---__child2': 1.5073127572667107, '_child9_---__child3': 2.2255127429351753, '_child9_---__child4': 1.8854108715273639, '_child9_---__child5': 2.62213179502303, '_child9_---__child6': 1.2106862033124646, '_child9_---__child7': 1.773783680638903, '_child9_---__child8': 1.1222853290317618, '_child9_---__child9': 1.0, '_child9_---_BACKGROUND': 2.2573817767748343, 'BACKGROUND_---__child0': 4.820882303565048, 'BACKGROUND_---__child1': 2.5319233344748815, 'BACKGROUND_---__child2': 3.4025803501541017, 'BACKGROUND_---__child3': 5.023831909882041, 'BACKGROUND_---__child4': 4.256092143119029, 'BACKGROUND_---__child5': 5.9191525303868735, 'BACKGROUND_---__child6': 2.732980972750269, 'BACKGROUND_---__child7': 4.0041069566148515, 'BACKGROUND_---__child8': 2.011415206436284, 'BACKGROUND_---__child9': 2.2573817767748343, 'BACKGROUND_---_BACKGROUND': 1.0}
colors_by_index: [(0.12156862745098039, 0.4666666666666667, 0.7058823529411765), (1.0, 0.4980392156862745, 0.054901960784313725), (0.17254901960784313, 0.6274509803921569, 0.17254901960784313), (0.8392156862745098, 0.15294117647058825, 0.1568627450980392), (0.5803921568627451, 0.403921568627451, 0.7411764705882353), (0.5490196078431373, 0.33725490196078434, 0.29411764705882354), (0.8901960784313725, 0.4666666666666667, 0.7607843137254902), (0.4980392156862745, 0.4980392156862745, 0.4980392156862745), (0.7372549019607844, 0.7411764705882353, 0.13333333333333333), (0.09019607843137255, 0.7450980392156863, 0.8117647058823529), (1.0, 1.0, 1.0)]
detections: {'CONTRAST_RATIO': {'_child0_---__child1': 1.9040396041710697, '_child0_---__child2': 1.4168312890382477, '_child0_---__child3': 1.0420980213864404, '_child0_---__child4': 1.1327015819803465, '_child0_---__child5': 1.227815191839397, '_child0_---__child6': 1.7639648250875561, '_child0_---__child7': 1.2039843979694074, '_child0_---__child8': 2.3967613887668797, '_child0_---__child9': 2.135607876861989, '_child1_---__child0': 1.9040396041710697, '_child1_---__child2': 1.3438717925713946, '_child1_---__child3': 1.9841959041480925, '_child1_---__child4': 1.6809719651332722, '_child1_---__child5': 2.337808751865111, '_child1_---__child6': 1.0794090545861994, '_child1_---__child7': 1.5814487358659695, '_child1_---__child8': 1.2587770671977794, '_child1_---__child9': 1.1216194622126747, '_child2_---__child0': 1.4168312890382477, '_child2_---__child1': 1.3438717925713946, '_child2_---__child3': 1.4764770829451577, '_child2_---__child4': 1.2508425092522129, '_child2_---__child5': 1.7396069809545562, '_child2_---__child6': 1.2450069664151364, '_child2_---__child7': 1.1767854229903805, '_child2_---__child8': 1.6916349937428425, '_child2_---__child9': 1.5073127572667107, '_child3_---__child0': 1.0420980213864404, '_child3_---__child1': 1.9841959041480925, '_child3_---__child2': 1.4764770829451577, '_child3_---__child4': 1.18038607740301, '_child3_---__child5': 1.1782146848392174, '_child3_---__child6': 1.8382242540190206, '_child3_---__child7': 1.254669758904064, '_child3_---__child8': 2.497660300969382, '_child3_---__child9': 2.2255127429351753, '_child4_---__child0': 1.1327015819803465, '_child4_---__child1': 1.6809719651332722, '_child4_---__child2': 1.2508425092522129, '_child4_---__child3': 1.18038607740301, '_child4_---__child5': 1.3907482101759876, '_child4_---__child6': 1.5573076379071946, '_child4_---__child7': 1.0629316822039165, '_child4_---__child8': 2.1159689603121485, '_child4_---__child9': 1.8854108715273639, '_child5_---__child0': 1.227815191839397, '_child5_---__child1': 2.337808751865111, '_child5_---__child2': 1.7396069809545562, '_child5_---__child3': 1.1782146848392174, '_child5_---__child4': 1.3907482101759876, '_child5_---__child6': 2.165822810112826, '_child5_---__child7': 1.4782703345644488, '_child6_---__child0': 1.7639648250875561, '_child6_---__child1': 1.0794090545861994, '_child6_---__child2': 1.2450069664151364, '_child6_---__child3': 1.8382242540190206, '_child6_---__child4': 1.5573076379071946, '_child6_---__child5': 2.165822810112826, '_child6_---__child7': 1.4651060495988069, '_child6_---__child8': 1.3587353640387438, '_child6_---__child9': 1.2106862033124646, '_child7_---__child0': 1.2039843979694074, '_child7_---__child1': 1.5814487358659695, '_child7_---__child2': 1.1767854229903805, '_child7_---__child3': 1.254669758904064, '_child7_---__child4': 1.0629316822039165, '_child7_---__child5': 1.4782703345644488, '_child7_---__child6': 1.4651060495988069, '_child7_---__child8': 1.9906914016570008, '_child7_---__child9': 1.773783680638903, '_child8_---__child0': 2.3967613887668797, '_child8_---__child1': 1.2587770671977794, '_child8_---__child2': 1.6916349937428425, '_child8_---__child3': 2.497660300969382, '_child8_---__child4': 2.1159689603121485, '_child8_---__child6': 1.3587353640387438, '_child8_---__child7': 1.9906914016570008, '_child8_---__child9': 1.1222853290317618, '_child8_---_BACKGROUND': 2.011415206436284, '_child9_---__child0': 2.135607876861989, '_child9_---__child1': 1.1216194622126747, '_child9_---__child2': 1.5073127572667107, '_child9_---__child3': 2.2255127429351753, '_child9_---__child4': 1.8854108715273639, '_child9_---__child6': 1.2106862033124646, '_child9_---__child7': 1.773783680638903, '_child9_---__child8': 1.1222853290317618, '_child9_---_BACKGROUND': 2.2573817767748343, 'BACKGROUND_---__child8': 2.011415206436284, 'BACKGROUND_---__child9': 2.2573817767748343}}

from accessiplot.detection.handler import DetectionHandler, DetectionTypes
import matplotlib.pyplot as plt
import numpy as np


# data to be plotted
x = np.arange(1, 11)
y = np.array([100, 10, 300, 20, 500, 60, 700, 80, 900, 100])

_ = plt.figure()
ax = plt.axes()

num_lines = 10
for i in range(num_lines):
    y_val = (np.random.rand(1, 10)).T
    ax.plot(x, y_val)

dh = DetectionHandler(ax=ax)
dh.run_detections(run_detections_list=[DetectionTypes.CONTRAST_RATIO.name])

print("contrast_ratios_by_index:", dh.contrast_ratios_by_index)

print("colors_by_index:", dh.colors_by_index)

print("detections:", dh.detections)

Total running time of the script: ( 0 minutes 0.126 seconds)

Gallery generated by Sphinx-Gallery