🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

1回答

1704閲覧

AttributeErrorも解決法がわかりません。

assemble

総合スコア8

OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2021/01/19 08:28

#問題
pythonでjpeg2000の画像を表示しようとしているのですが
AttributeErrorが出てしまいます。
自分なりに調べたのですが理解ができなかったため具体的な解決策を
教えていただきたいです。

#発生している問題・エラーメッセージ

python3

1imread_('T53SLV_20201202T020039_B04_10m.jp2'): can't read header: OpenCV(4.2.0) /root/opencv/opencv-4.2.0/modules/imgcodecs/src/grfmt_jpeg2000.cpp:196: error: (-215:Assertion failed) depth == 8 || depth == 16 in function 'readHeader' 2 3Traceback (most recent call last): 4 File "chap5.py", line 20, in <module> 5 img_float = img.astype(np.float32) 6AttributeError: 'NoneType' object has no attribute 'astype' 7

#該当のソースコード

python3

1import os 2import numpy as np 3os.environ["OPENCV_IO_ENABLE_JASPER"] = "True" 4import cv2 5from PIL import Image 6 7#扱える最大ピクセル数を増やす 8Image.MAX_IMAGE_PIXELS = 200000000 9 10#画像pass 11path_b4 = ('S2B_MSIL2A_20201202T020039_N0214_R060_T53SLV_20201202T041853.SAFE/GRANULE/L2A_T53SLV_A019534_20201202T020037/IMG_DATA/R10m/T53SLV_20201202T020039_B04_10m.jp2') 12 13#元の画像を読み込む 14img = cv2.imread(path_b4, cv2.IMREAD_COLOR) 15img_float = img.astype(np.float32) 16 17#ウィンドウに表示 18cv2.imshow("MAP", img) 19 20#終了処理 21cv2.waitKey(0) 22cv2.destroyAllWindows()

#試したこと
pngファイルを試したところうまく表示できました。

#環境等
ubuntu20、python3でopencv(4.2.0)を使っています
画像は.jp2を用いており、(10980, 10980)の大きさです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

assemble

2021/01/21 06:06

環境とプログラムを書き換え、違うエラーが出たため新しくトピックを作成したほうがいいと思い作成しました。かなり重複してますので立てないほうが良かったでしょうか。すみません。
yuki23

2021/01/21 09:06

同じ質問を何度もして、「ライブラリがサポートしていないので無理です」という回答をそのたびに受けているようですが、それで納得できない理由は何でしょうか?
assemble

2021/01/26 05:55

私は複数jp2画像を所持しているのですが、ある一つでのみ表示ができません。そのため何による差異なのかを明らかにしたいのです。 表示できていたときもあるため、サポートしていないとは思えないのです。
yuki23

2021/01/26 06:02

では、表示できる画像ファイルと表示できない画像ファイルを質問に提示してください
assemble

2021/01/26 07:04

表示できないファイルですが2MBを大きく超過する(62MB程度)ため添付することができないのです。
yuki23

2021/01/26 07:43

ならば外部のアップローダーなりdropboxの共有なり何なり使ってください
assemble

2021/01/26 08:40

ご指摘ありがとうございました。
guest

回答1

0

ベストアンサー

開発者らしい人が、難しくて全部はサポートできていないよ。
とか書いていますね。

JPEG2000 support broken?

JPEG2000 format is tricky enough and support in OpenCV is very limited.
Also it is disabled in runtime by default in latest releases (3.4.6/4.1.0): see #14058 for details.

投稿2021/01/19 09:28

ppaul

総合スコア24670

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

assemble

2021/01/21 06:39

ありがとうございます。参考にしてみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問