diff --git a/homeassistant/components/doods/image_processing.py b/homeassistant/components/doods/image_processing.py
index 65a32938140..4130f67ec13 100644
--- a/homeassistant/components/doods/image_processing.py
+++ b/homeassistant/components/doods/image_processing.py
@@ -3,7 +3,7 @@ import io
 import logging
 import time
 
-from PIL import Image, ImageDraw
+from PIL import Image, ImageDraw, UnidentifiedImageError
 from pydoods import PyDOODS
 import voluptuous as vol
 
@@ -274,7 +274,11 @@ class Doods(ImageProcessingEntity):
 
     def process_image(self, image):
         """Process the image."""
-        img = Image.open(io.BytesIO(bytearray(image)))
+        try:
+            img = Image.open(io.BytesIO(bytearray(image))).convert("RGB")
+        except UnidentifiedImageError:
+            _LOGGER.warning("Unable to process image, bad data")
+            return
         img_width, img_height = img.size
 
         if self._aspect and abs((img_width / img_height) - self._aspect) > 0.1:
diff --git a/homeassistant/components/tensorflow/image_processing.py b/homeassistant/components/tensorflow/image_processing.py
index dee2a021829..26cf0fed5e8 100644
--- a/homeassistant/components/tensorflow/image_processing.py
+++ b/homeassistant/components/tensorflow/image_processing.py
@@ -4,7 +4,7 @@ import logging
 import os
 import sys
 
-from PIL import Image, ImageDraw
+from PIL import Image, ImageDraw, UnidentifiedImageError
 import numpy as np
 import voluptuous as vol
 
@@ -287,7 +287,11 @@ class TensorFlowImageProcessor(ImageProcessingEntity):
             inp = img[:, :, [2, 1, 0]]  # BGR->RGB
             inp_expanded = inp.reshape(1, inp.shape[0], inp.shape[1], 3)
         except ImportError:
-            img = Image.open(io.BytesIO(bytearray(image))).convert("RGB")
+            try:
+                img = Image.open(io.BytesIO(bytearray(image))).convert("RGB")
+            except UnidentifiedImageError:
+                _LOGGER.warning("Unable to process image, bad data")
+                return
             img.thumbnail((460, 460), Image.ANTIALIAS)
             img_width, img_height = img.size
             inp = (