FC2カウンター FPGAの部屋 Kria-PYNQ をやってみる7(Kira-PYNQ の Jupyter Notebook をやってみる4)
fc2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

Kria-PYNQ をやってみる7(Kira-PYNQ の Jupyter Notebook をやってみる4)

Kria-PYNQ をやってみる6(Kira-PYNQ の Jupyter Notebook をやってみる3)”の続き。

前回は、opencv_face_detect_webcam.ipynb と opencv_filters_webcam.ipynb をやってみた。今回は、opencv_filters_webcam.ipynb をちょっと改造して、ジュピター・ノートブックに元画像を表示した。ラプラシアン・フィルタの画像を追加した。ソーベル・フィルタを追加した。

追加したコードを示す。

元画像をジュピター・ノートブック上に表示した。
Step 3-1: Show Webcam

# Output webcam image as JPEG
%matplotlib inline 
from matplotlib import pyplot as plt
import numpy as np

plt.figure(1, figsize=(10, 10))
plt.imshow(frame_vga[:,:,[2,1,0]])
plt.show()


Kria-PYNQ_48_220218.jpg

Step4-1: Show Laplacian filter result

%matplotlib inline 
from matplotlib import pyplot as plt
import numpy as np

plt.figure(1, figsize=(10, 10))
plt.imshow(laplacian_frame[:,:,[2,1,0]])
plt.show()


Kria-PYNQ_49_220218.jpg

Step4-2: Sobel filter

# Sobelフィルタのコードは【Python/OpenCV】Sobelフィルタで輪郭検出(エッジ抽出)の方法まる3を参考にした
# https://algorithm.joho.info/programming/python/opencv-sobel-filter-py/

import time

num_frames = 60
readError = 0

start = time.time()
for i in range (num_frames):   
    # read next image
    ret, frame_vga = videoIn.read()
    if (ret):
        outframe = displayport.newframe()
        frame_vga_gray = cv2.cvtColor(frame_vga, cv2.COLOR_RGB2GRAY)
        sobel_framex = cv2.Sobel(frame_vga_gray, cv2.CV_32F, 1, 0)
        sobel_framey = cv2.Sobel(frame_vga_gray, cv2.CV_32F, 0, 1)
        sobel_frame = np.sqrt(sobel_framex ** 2 + sobel_framey ** 2)
        outframe[:,:,0] = sobel_frame
        outframe[:,:,1] = sobel_frame
        outframe[:,:,2] = sobel_frame
        displayport.writeframe(outframe)
    else:
        readError += 1
end = time.time()

print("Frames per second: " + str((num_frames-readError) / (end - start)))
print("Number of read errors: " + str(readError))


Kria-PYNQ_50_220218.jpg

Step 4-3: Show Sobel filter result

%matplotlib inline 
from matplotlib import pyplot as plt
import numpy as np

plt.figure(1, figsize=(10, 10))
plt.imshow(outframe)
plt.show()


Kria-PYNQ_51_220218.jpg

plt.imshow(outframe) はたぶん色の対応が違っているのと思うのだが、白黒画像を表示しているので、良しとした。
  1. 2022年02月18日 04:32 |
  2. KRIA KV260 Vision AI Starter Kit
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
https://marsee101.blog.fc2.com/tb.php/5505-fac4f64c
この記事にトラックバックする(FC2ブログユーザー)