Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

比較明合成による流星の検出

809 views

Published on

メテオサーチチャレンジ発表会資料(3位)

Published in: Technology
  • Be the first to comment

  • Be the first to like this

比較明合成による流星の検出

  1. 1. PERC
  2. 2. • • (HEVC,H.264,AAC,Opus, ) • •
  3. 3. 0 0.25 0.5 0.75 1 4/8 4/18 4/28 5/8 5/20 6/2 6/30 0.80495 0.88908 0.88856 0.89988 0.83184 0.86017 0.92017 0.92671 0.99791 0.97547 0.99930 0.99436
  4. 4. • ( ) • •
  5. 5. • z 1 2 3 |1-2| |2-3|
  6. 6. 000029.mpg while True: ret, frame = cap.read() if not ret: break gray = cv2.cvtColor(frame, toGray) diff = cv2.absdiff(gray, prev_gray)         sum_diff += diff         prev_gray = gray sum_diff[sum_diff[:,:] > 255] = 0 while True: ret, frame = cap.read() if not ret: break gray = cv2.cvtColor(frame, toGray) diff = cv2.absdiff(gray, prev_gray) diff[diff[:,:] < 24] = 0 #         sum_diff += diff         prev_gray = gray sum_diff[sum_diff[:,:] > 255] = 0
  7. 7. SSD (Single Shot MultiBox Detector) 200 178 4 18 0.80495 0.88908 https://github.com/slowsingle/labeling_for_object_detection https://github.com/rykov8/ssd_keras
  8. 8. • 24 0 • 009888.mpg 24 0 8 0 4 28 0.88856 0.89988
  9. 9. • • •
  10. 10. • while True: ret, frame = cap.read() if not ret: break gray = cv2.cvtColor(frame, toGray) max = np.maximum(max, gray) 1 009888.mpg000029.mpg 000147.mpg
  11. 11. 3. 4. 002795.mpg 000029.mpg 000040.mpg 1. 2.
  12. 12. • RGB3ch 1ch [ 2. 158. 0. 39. 155. 0. 54. 158. 0. 150. 150. 149. 0.] [104. 0. 0. 0. 0. 0. 0. 53. 0. 150. 150. 149. 0.] [104. 0. 2. 103. 0. 0. 104. 107. 147. 149. 150. 149. 0.] [ 0. 0. 0. 158. 0. 0. 0. 0. 147. 147. 147. 147. 147.] [ 0. 103. 29. 155. 104. 53. 0. 0. 147. 147. 147. 147. 147.] [ 0. 0. 0. 0. 0. 0. 0. 145. 147. 147. 147. 147. 0.] [145. 0. 0. 0. 0. 0. 0. 145. 147. 147. 147. 0. 0.] [145. 0. 0. 0. 0. 0. 145. 145. 146. 147. 147. 0. 0.] [145. 0. 0. 0. 0. 0. 145. 145. 146. 145. 0. 0. 0.] [145. 0. 0. 0. 0. 0. 145. 145. 146. 145. 0. 0. 0.] [ 0. 0. 0. 0. 0. 0. 145. 145. 146. 145. 0. 0. 0.] [ 0. 0. 0. 0. 0. 0. 145. 145. 146. 0. 0. 0. 0.] [ 0. 0. 0. 0. 0. 0. 0. 145. 146. 0. 0. 0. 0.] [ 0. 0. 0. 0. 143. 143. 143. 0. 0. 0. 0. 0. 0.] [ 0. 0. 0. 0. 143. 143. 143. 0. 0. 0. 0. 0. 0.] [ 0. 0. 0. 0. 143. 143. 143. 0. 0. 0. 0. 0. 0.] [ 1. 0. 0. 0. 0. 143. 143. 0. 0. 0. 0. 0. 0.] [ 0. 0. 0. 0. 0. 143. 0. 0. 0. 0. 0. 0. 0.] [ 0. 0. 0. 141. 141. 143. 0. 0. 0. 0. 0. 0. 0.] [ 0. 0. 143. 141. 141. 0. 0. 0. 0. 0. 0. 0. 0.] [ 0. 0. 143. 141. 141. 141. 0. 0. 0. 0. 0. 0. 0.] 141 150 20 0
  13. 13. 194 250 R. ( ) G. ( 24 0) B. SSD 1. 2. 3. 4. 5 8 0.83184 0.86017
  14. 14. YOLOv3 (You Only Look Once) • SSD YOLOv3 5 20 0.92017 0.92671 https://github.com/experiencor/keras-yolo3 R. ( ) G. ( 24 0) B. YOLOv3 1. 2. 3. 4.
  15. 15. • 1 ( ) n1 n2 n3 n4 L (n2-n1) / L (n3-n2) / L (n4-n3) / L ≒2.0 / 2 R: G: B:
  16. 16. 2 ( ) • • [ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.] [ 0. 0. 0. 143. 144. 143. 0. 0. 0. 0.] [ 0. 0. 0. 144. 144. 144. 0. 0. 0. 0.] [ 0. 0. 0. 143. 143. 144. 144. 0. 0. 0.] [ 0. 0. 0. 0. 144. 144. 143. 0. 0. 0.] [ 0. 0. 0. 0. 143. 143. 144. 144. 0. 0.] [ 0. 0. 0. 0. 0. 0. 143. 0. 0. 0.] [ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.] 002597.mpg 0
  17. 17. • • 3 ( ) / / / / > 0.8 < 0.2
  18. 18. • cv2.createCLAHE( clipLimit=6.0, tileGridSize=(8,8))
  19. 19. 6 2 0.99791 0.97547 R. ( ) G. ( ) B. YOLO v3 1. 2. 3. 4.
  20. 20. • • 100 0
  21. 21. Non-local Means Filter • Non- local Means Filter NLMeansFilter cv2.fastNlMeansDenoising(frame,None,3,7,21)
  22. 22. R. ( ) G. ( 100 0 NLMeansFilter+ ) B. ( 100 0) YOLO v3 1. 2. 3. 4. 6 30 0.99930 (2 ) 0.99436 (3 ) 194 250

×