回答編集履歴

1

内容を修正&追加

2021/01/03 12:57

投稿

A_kirisaki
A_kirisaki

スコア2853

test CHANGED
@@ -1 +1,11 @@
1
1
  このようなケースでは Python が親プログラムとなり C++ が子プログラムとして関数を差し出しそれを Python が呼び出す、という形になります。そのようなことを実現するために [ctypes](https://docs.python.org/ja/3/library/ctypes.html#module-ctypes) というパッケージが用意されています。ただし渡せる型は限られていること、メモリの管理を覚える必要があることに注意して使ってください。
2
+
3
+
4
+
5
+ 追記:
6
+
7
+ jbpb0 さんが述べられている通り OpenCV はコンパイル済みのバイナリを呼び出しますので C++ で呼び出しても実行速度はほぼ変わりません。C++ 側で追加の画像処理をガッツリ書く必要がある場合でないと有効でないでしょう。また、ppaul さんによればわたしの挙げた ctypes より [Python/C API](https://docs.python.org/ja/3/c-api/index.html) の方がより高速だそうです(知らんかった……)。
8
+
9
+
10
+
11
+ いずれにせよ問題点は「高速化」ということらしいですので OpenCV ならば GPU が使えないか検討すると良いかもしれません。