Преобразование изображения в двойное (двойная точность) разрешит проблему, потому что команда imread взяла изображение по умолчанию в формате unit8 (unsigned int).
Контекст важен, поэтому Флаттер знает, где в дереве искать экземпляр InheritedWidget, поскольку их может быть несколько. Если это не так для вашего варианта использования, вы можете рассмотреть вопрос о перемещении необходимых данных в простой одноэлементный класс (не виджет).