diff --git a/src/turtle_frame.cpp b/src/turtle_frame.cpp
index c3a24c82fd9f6f31726fb57fe32a734232149eac..38565af96dc67d6720efdbb971a4bd2e7994b855 100644
--- a/src/turtle_frame.cpp
+++ b/src/turtle_frame.cpp
@@ -297,22 +297,12 @@ bool TurtleFrame::resetCallback(std_srvs::Empty::Request&, std_srvs::Empty::Resp
 
 void TurtleFrame::drawImage(turtlesim_xl::img imgData) {
   QPointF point;
-  
   point.setX(imgData.x);
-  point.setY(imgData.y);
-
-  std::vector<uint8_t> rawImg;
-  for(uint8_t nr : imgData.img) {
-    rawImg.push_back(nr);
-  }
-
-  //ROS_INFO("Img Count: %lu; QByte Count: %d", imgData.img.size() , byAr.size());
-
+  point.setY(FRAME_HEIGHT -imgData.y);
+	const u_char *c = reinterpret_cast<const u_char *>(&imgData.img[0]);
   QImage img;
-  //img.loadFromData(byAr);
-  
-  //ROS_INFO("Draw msg img at: x = %f; y = %f", point.x(), point.y());
-  //path_painter_.drawImage(point, img);
+  img.loadFromData(c,imgData.img.size());
+  path_painter_.drawImage(point, img);
 }
 
 }