diff --git a/aos/vision/blob/hierarchical_contour_merge.cc b/aos/vision/blob/hierarchical_contour_merge.cc
index ec617ca..c7de4de 100644
--- a/aos/vision/blob/hierarchical_contour_merge.cc
+++ b/aos/vision/blob/hierarchical_contour_merge.cc
@@ -1,6 +1,6 @@
 #include "aos/vision/blob/hierarchical_contour_merge.h"
 
-#include <math.h>
+#include <cmath>
 #include <queue>
 
 #include "aos/vision/blob/disjoint_set.h"
diff --git a/aos/vision/blob/range_image.cc b/aos/vision/blob/range_image.cc
index 81a8c48..bf8d09f 100644
--- a/aos/vision/blob/range_image.cc
+++ b/aos/vision/blob/range_image.cc
@@ -1,7 +1,7 @@
 #include "aos/vision/blob/range_image.h"
 
-#include <math.h>
 #include <algorithm>
+#include <cmath>
 
 namespace aos {
 namespace vision {
@@ -101,8 +101,7 @@
 }
 
 void PrintTo(const RangeImage &range, std::ostream *os) {
-  *os << "{min_y=" << range.min_y()
-      << ", ranges={";
+  *os << "{min_y=" << range.min_y() << ", ranges={";
   bool first_row = true;
   for (const auto &row : range) {
     if (first_row) {
diff --git a/aos/vision/blob/region_alloc.h b/aos/vision/blob/region_alloc.h
index df33fed..3275f3e 100644
--- a/aos/vision/blob/region_alloc.h
+++ b/aos/vision/blob/region_alloc.h
@@ -1,9 +1,9 @@
 #ifndef _AOS_VISION_REGION_ALLOC_H_
 #define _AOS_VISION_REGION_ALLOC_H_
 
-#include <stdint.h>
-#include <stdio.h>
-#include <stdlib.h>
+#include <cstdint>
+#include <cstdio>
+#include <cstdlib>
 #include <memory>
 #include <new>
 #include <utility>
@@ -17,7 +17,7 @@
 class AnalysisAllocator {
  public:
   template <typename T, typename... Args>
-  T *cons_obj(Args &&... args) {
+  T *cons_obj(Args &&...args) {
     uint8_t *ptr = NULL;
     if (sizeof(T) + alignof(T) > block_size_) {
       __builtin_trap();
