MIPI CSI-2のケーブル長さを延長してカメラ動作してみた

本サイトはアフィリエイト広告を利用しています。
MIPI CSI-2

ラズベリーパイのカメラのケーブル長を延ばしてみました。

普通は数百mm程度ですが2mまでケーブルを延長させています。

MIPI CSI-2のケーブルの長さによるカメラ動作への影響を紹介します。

 

スポンサーリンク

MIPI CSI-2のケーブル長さを延長してカメラ動作してみた

MIPI CSI-2のケーブル長さを「2m」まで延長してカメラ動作確認してみました。

(カメラの付属品で付いてきたケーブル長が「150㎜」ですので約13倍です。)

 

ケーブルが2mでラズベリーパイでカメラ動作したところ、無事に撮影できました。

最大解像度の2592x1944の5Mピクセルの静止画撮影が出来ました。

 

また1920x1080の動画もほぼ問題なく撮影出来ました。

途中、一瞬横筋のノイズが入った所がありますがほぼ動画撮影できています。

 

実際のテスト動画は下記になります。ほぼ問題なくカメラ動作できています。

また動画だと一瞬横筋のノイズが入ったことが分かりやすいかと思います

 

MIPI CSI-2のケーブル長を延長した場合の影響に関して紹介していきます。

また規格や波形に関しては下記記事で説明しています。

ぜひ合わせて一緒にご覧ください。(リンク先はこちら)

MIPI CSI-2の規格を調べて波形を確認してみた
MIPI CSI-2の規格書は本来有料で個人でのダウンロードは難しいです。 但し、ドラフト版やメーカのデータシートから規格をある程度は把握できます。 役に立った情報元、実際に測定した波形含めて紹介していきます。

 

MIPI CSI-2はラズパイのカメラに使われている

身近な所でMIPI CSI-2はラズベリーパイのカメラに使われています。

汎用的なラズパイのカメラだと約500万画素(5M pixels)、1080p30fpsのスペックがあります。

カメラの種類によっては更に高解像度のもあります。

 

ラズパイのカメラはコネクタに挿すだけで簡単に使えます。非常に便利です。

下記記事で使い方をまとめています。(リンク先はこちら)

ラズパイでカメラの使い方!Pythonとコマンドの基本・応用例を紹介
ラズベリーパイとカメラの使い方をまとめてみました。初心者の方でも簡単に撮影できますPythonとコマンドのどちらでも写真・動画撮影が対応できる旨を紹介して、最後には画像認識まで実施してみます。ラズパイでカメラの使い方!Pythonとコマンド...

 

MIPI CSI-2の周波数

MIPI CSI-2は名前の通りカメラ向けのIFです。

  • MIPI…Mobile Industry Processor Interface
  • CSI-2…Camera Serial Interface

 

画像や動画を取り扱うので大量のデータが通信されます。

MIPI CSI-2のデータ・クロックは差動100Ωで高速通信を行っています

データの各レーンで最大1.5Gbps(750MHz)の通信速度・周波数となります。

 

MIPI CSI-2のケーブルは基本的に短い

FFCのような平らなケーブルでMIPI CSI-2の差動信号を送っているケースが多いと思われます。

FFCならばモバイル・車載向けの狭いスペースで差動信号を送るにも便利です。

 

基本は数百㎜程度の短いFFCケーブルが多いです。

MIPI CSI-2は高速信号のため(減衰の観点としても)、ケーブルが短い方がベターです。

筆者が購入したラズパイのカメラの付属品ケーブルは150mmでした。

 

MIPI CSI-2の信号

MIPI CSI-2のレーンは各ボード・基板で異なります。

規格としては最大データ_4レーン + クロック_1レーンということです。

例えばラズパイのMIPI CSI-2としてはデータ_2レーン、クロック_1レーンとなっています。

 

ラズベリーパイのカメラIFとしてのコネクタピン配置は下記です。実質15ピンです。

MIPI CSI-2の差動ペアとペアの間にGNDを挟む形でガードしています。

MIPI CSI-2以外にも電源やカメラ認識用のI2Cなどの信号も入っている形です。

  • 2ピン…CAM1_DN0
  • 3ピン…CAM1_DP0
  • 5ピン…CAM1_DN1
  • 6ピン…CAM1_DP1
  • 8ピン…CAM1_CN
  • 9ピン…CAM1_CP
  • 11ピン…CAM_GPIO
  • 13ピン…SCL0
  • 14ピン…SDA0
  • 15ピン…3V3
  • 4,7,10ピン…GND

 

(もしかしたら通信できないかもしれませんが、ケーブル長が延長されても…)

ラズパイカメラのコネクタに合うならばMIPI CSI-2の信号は繋がるはずです。

 

MIPI CSI-2のケーブル長を変えてテストしてみる

ラズパイのカメラの延長ケーブルは市販で売られています。

500mm,1m,2mのセットのケーブルを購入してみました。1000円程度で購入できました。

リンク先のケーブルが切れていたので30cmと50cmのものに修正しています。

 

実際に購入して開梱した際の写真は下記形です。

FFCケーブルですので非常にコンパクトに納められていました。

 

500mm,1m,2mの各ケーブルの写真は下記形です。

500㎜でラズパイ周りで十分に取り回せます。(付属品の150mmは結構短かったです)

2mもあればラズパイ本体からカメラをかなり遠い位置まで配置できそうです。

 

一番長い2mのケーブルをカメラとラズパイに取り付けて、テストしてみます。

最大解像度の静止画と動画を撮影できるか確認します。

 

ラズベリーパイのカメラの最大解像度

今回のテストで使用しているラズベリーパイのカメラは少し古いVer1.3(OV5647)です。

テストで使う解像度の設定は下記とします。

  • 静止画の最大解像度…2592x1944=5Mピクセル
  • 動画の最大解像度…1920x1080 30fps  ※1

※1…動画に関してはfpsを落として解像度を上げれますが、一番は汎用的な設定にしました。

 

最近のラズベリーパイのカメラVer2.0以降(IMX219)では性能が上がっています。

もし同様にテストする場合は更に解像度設定を上げれます。

 

最大解像度の静止画のテスト

今回はラズパイにてPythonのプログラミングしてテスト動作させています。

カメラの解像度を自由に設定可能です。実際に使ったコードは下記です。

import time
import picamera

with picamera.PiCamera() as camera:
 camera.resolution = (2592, 1944)
 camera.start_preview()
 time.sleep(2)
 camera.capture('test.jpg')

 

ラズパイにはデフォルトでPythonがインストールされており、誰でも簡単に使用できます。

初心者の方でも大丈夫です。下記記事で使い方を紹介しています。(リンク先はこちら)

ラズベリーパイでプログラミング入門!Pythonの簡単な始め方
プログラミングを始めたい方にラズベリーパイを使った簡単な入門方法を紹介します。プログラミング言語の中でも初心者にもやさしく、人気なPythonがラズパイならば簡単にスタートできます。ラズベリーパイでプログラミング入門!Pythonの簡単な始...

 

ケーブルを2mに延長してテストした結果、最大解像度で撮影できました。

プロパティで確認すると2592x1944=5Mピクセルの静止画が撮影できています。

 

mediainfoで写真の詳細確認

一応「mediainfo」というコマンドで撮影した写真(test.jpg)を詳細確認しました。

ラズパイでもコンソール上で下記コマンドを入力することでインストールできます。

sudo apt-get install mediainfo

 

もちろん特に問題なく、2592x1944の写真データでした。

2mのケーブルを使ってもMIPI CSI-2で正常に画像データを入手できています。

pi@raspberrypi:~ $ mediainfo --fullscan test.jpg 
General
Count                                    : 331
Count of stream of this kind             : 1
Kind of stream                           : General
Kind of stream                           : General
Stream identifier                        : 0
Count of image streams                   : 1
Image_Format_List                        : JPEG
Image_Format_WithHint_List               : JPEG
Codecs Image                             : JPEG
Complete name                            : test.jpg
File name                                : test.jpg
File name                                : test
File extension                           : jpg
Format                                   : JPEG
Format                                   : JPEG
Format/Extensions usually used           : h3d jpeg jpg jpe jps mpo
Commercial name                          : JPEG
Internet media type                      : image/jpeg
File size                                : 2375691
File size                                : 2.27 MiB
File size                                : 2 MiB
File size                                : 2.3 MiB
File size                                : 2.27 MiB
File size                                : 2.266 MiB
Stream size                              : 0
Stream size                              : 0.00 Byte (0%)
Stream size                              :  Byte0
Stream size                              : 0.0 Byte
Stream size                              : 0.00 Byte
Stream size                              : 0.000 Byte
Stream size                              : 0.00 Byte (0%)
Proportion of this stream                : 0.00000
File last modification date              : UTC 2020-11-14 10:28:38
File last modification date (local)      : 2020-11-14 19:28:38

Image
Count                                    : 124
Count of stream of this kind             : 1
Kind of stream                           : Image
Kind of stream                           : Image
Stream identifier                        : 0
Format                                   : JPEG
Format                                   : JPEG
Commercial name                          : JPEG
Internet media type                      : image/jpeg
Width                                    : 2592
Width                                    : 2 592 pixels
Height                                   : 1944
Height                                   : 1 944 pixels
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8
Bit depth                                : 8 bits
Compression mode                         : Lossy
Compression mode                         : Lossy
Stream size                              : 2375691
Stream size                              : 2.27 MiB (100%)
Stream size                              : 2 MiB
Stream size                              : 2.3 MiB
Stream size                              : 2.27 MiB
Stream size                              : 2.266 MiB
Stream size                              : 2.27 MiB (100%)
Proportion of this stream                : 1.00000

 

 

最大解像度の動画のテスト

動画もPythonのプログラミングしてテスト動作させています。実際に使ったコードは下記です。

import time
import picamera

with picamera.PiCamera() as camera:
 camera.resolution = (1920, 1080)
 camera.start_preview()
 time.sleep(2)
 camera.start_recording('test.h264')
 camera.wait_recording(10)
 camera.stop_recording()

 

1920x1080の動画もほぼ問題なく撮影出来ました。

途中、一瞬横筋のノイズが入った所がありますがほぼ動画撮影できています。

 

動画のプロパティから1920x1080の30fpsとなっていました。

 

冒頭でも紹介しましたが、実際のテスト動画は下記になります。

動画だと(2mの影響かは断言できませんが)一瞬横筋のノイズが入ったことが確認できます。

ケーブル長さはなるべく短い方が良さそうです。

 

mediainfoで動画の詳細確認

一応「mediainfo」というコマンドで撮影した動画(test.mp4)を詳細確認しました。

下記コマンドでpythonから出力された動画形式の「h264」から「mp4」に変換しています。

MP4Box -add test.h264 test.mp4

 

mp4に変換した理由は下記2点です。

  • (筆者が)動画編集しやすいようにするため。
  • h264で「mediainfo」してもfps値が表示されなかったため。(mp4だと出ました)

 

データの中身内容としては特に問題なく、1920x1080で動画ファイルとなっています。

2mのケーブルでも高解像度の1920x1080 30fpsの動画データを取得できています。

pi@raspberrypi:~ $ mediainfo --fullscan test.mp4
General
Count                                    : 331
Count of stream of this kind             : 1
Kind of stream                           : General
Kind of stream                           : General
Stream identifier                        : 0
Count of video streams                   : 1
Video_Format_List                        : AVC
Video_Format_WithHint_List               : AVC
Codecs Video                             : AVC
Complete name                            : test.mp4
File name                                : test.mp4
File name                                : test
File extension                           : mp4
Format                                   : MPEG-4
Format                                   : MPEG-4
Format/Extensions usually used           : mov mp4 m4v m4a m4b m4p m4r 3ga 3gpa 3gpp 3gp 3gpp2 3g2 k3g jpm jpx mqv ismv isma ismt f4a f4b f4v
Commercial name                          : MPEG-4
Format profile                           : Base Media
Internet media type                      : video/mp4
Codec ID                                 : isom
Codec ID                                 : isom (isom/avc1)
Codec ID/Url                             : http://www.apple.com/quicktime/download/standalone.html
CodecID_Compatible                       : isom/avc1
File size                                : 21105776
File size                                : 20.1 MiB
File size                                : 20 MiB
File size                                : 20 MiB
File size                                : 20.1 MiB
File size                                : 20.13 MiB
Duration                                 : 11920
Duration                                 : 11 s 920 ms
Duration                                 : 11 s 920 ms
Duration                                 : 11 s 920 ms
Duration                                 : 00:00:11.920
Duration                                 : 00:00:11:23
Duration                                 : 00:00:11.920 (00:00:11:23)
Overall bit rate                         : 14164950
Overall bit rate                         : 14.2 Mb/s
Frame rate                               : 25.000
Frame rate                               : 25.000 FPS
Frame count                              : 298
Stream size                              : 2167
Stream size                              : 2.12 KiB (0%)
Stream size                              : 2 KiB
Stream size                              : 2.1 KiB
Stream size                              : 2.12 KiB
Stream size                              : 2.116 KiB
Stream size                              : 2.12 KiB (0%)
Proportion of this stream                : 0.00010
HeaderSize                               : 2069
DataSize                                 : 21103617
FooterSize                               : 90
IsStreamable                             : Yes
Encoded date                             : UTC 2020-11-14 10:08:37
Tagged date                              : UTC 2020-11-14 10:08:37
File last modification date              : UTC 2020-11-14 10:08:38
File last modification date (local)      : 2020-11-14 19:08:38

Video
Count                                    : 375
Count of stream of this kind             : 1
Kind of stream                           : Video
Kind of stream                           : Video
Stream identifier                        : 0
StreamOrder                              : 0
ID                                       : 1
ID                                       : 1
Format                                   : AVC
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format/Url                               : http://developers.videolan.org/x264.html
Commercial name                          : AVC
Format profile                           : High@L4
Format settings                          : CABAC / 1 Ref Frames
Format settings, CABAC                   : Yes
Format settings, CABAC                   : Yes
Format settings, ReFrames                : 1
Format settings, ReFrames                : 1 frame
Format settings, GOP                     : M=1, N=60
Internet media type                      : video/H264
Codec ID                                 : avc1
Codec ID/Info                            : Advanced Video Coding
Duration                                 : 11920
Duration                                 : 11 s 920 ms
Duration                                 : 11 s 920 ms
Duration                                 : 11 s 920 ms
Duration                                 : 00:00:11.920
Duration                                 : 00:00:11:23
Duration                                 : 00:00:11.920 (00:00:11:23)
Bit rate                                 : 14163496
Bit rate                                 : 14.2 Mb/s
Maximum bit rate                         : 16918808
Maximum bit rate                         : 16.9 Mb/s
Width                                    : 1920
Width                                    : 1 920 pixels
Height                                   : 1080
Height                                   : 1 080 pixels
Stored_Height                            : 1088
Sampled_Width                            : 1920
Sampled_Height                           : 1080
Pixel aspect ratio                       : 1.000
Display aspect ratio                     : 1.778
Display aspect ratio                     : 16:9
Rotation                                 : 0.000
Frame rate mode                          : CFR
Frame rate mode                          : Constant
Frame rate                               : 25.000
Frame rate                               : 25.000 FPS
Frame count                              : 298
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Chroma subsampling                       : 4:2:0
Bit depth                                : 8
Bit depth                                : 8 bits
Scan type                                : Progressive
Scan type                                : Progressive
Bits/(Pixel*Frame)                       : 0.273
Stream size                              : 21103609
Stream size                              : 20.1 MiB (100%)
Stream size                              : 20 MiB
Stream size                              : 20 MiB
Stream size                              : 20.1 MiB
Stream size                              : 20.13 MiB
Stream size                              : 20.1 MiB (100%)
Proportion of this stream                : 0.99990
Title                                    : h264@GPAC0.5.2-DEV-revVersion: 0.5.2-426-gc5ad4e4+dfsg5-5
Encoded date                             : UTC 2020-11-14 10:08:37
Tagged date                              : UTC 2020-11-14 10:08:38
Codec configuration box                  : avcC

 

まとめ

今回はMIPI CSI-2のケーブル長に関して紹介させていただきました。

記事をまとめますと下記になります。

MIPI CSI-2のケーブル内では1.5Gbps(750MHz)の高速通信をしています
ケーブルを延長しても通信可能なケースも多々ありますが、短い方がベターです

 

必要に応じてラズパイのカメラの延長ケーブルなどで長さを調整してもらえれば良いと思います。

またMIPI CSI-2の規格や波形に関しても下記記事で説明しています。

ぜひ合わせて一緒にご覧ください。(リンク先はこちら)

MIPI CSI-2の規格を調べて波形を確認してみた
MIPI CSI-2の規格書は本来有料で個人でのダウンロードは難しいです。 但し、ドラフト版やメーカのデータシートから規格をある程度は把握できます。 役に立った情報元、実際に測定した波形含めて紹介していきます。

コメント

  1. リンク報告マン より:

    ラズパイのカメラの延長ケーブル のページがデジタルオシロになってます。