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

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

詳細はこちら
Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

6763閲覧

openslide-pythonというライブラリをwindowsで使いたい

SakuSakuLab

総合スコア8

Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

1クリップ

投稿2019/09/26 07:47

編集2019/09/27 00:25

実現したいこと

Pythonでopenslideという、巨大な画像を開くライブラリを使いたい(install & use)です。
正確には、pythonなのでopenslide-pythonになります。

windows (jupyter notebook上)で使えるようにしたいです。

Linux (jupyter notebook上)では普通に使っていました。

単純なことだと思います。
初学者にてやり方がわかりません。

やったこと

installの方法は、ネット上では2つのやり方が示唆されてます。
1つ目は、ココにあるように、

1,Install OpenSlide.
2,pip install openslide-python

とあります。
2はわかるのですが、
1が「どの (what)」ファイルを「どうやって(how)」インストールするのかがわかりません。

なので断念しました。

2つ目は、ココを参考にして、

1,openslideのWindows Binaries (のbinary package)をココからDL
(Cドライブに適当に置きました)
2,1の"bin" フォルダのパスをシステム環境変数Pathに追加
3,pip install openslide-python(successfully installed ver1.1.1)

と解釈して、1-3の操作を行いました。

その後、jupyter notebookで

import openslide

とだけ書いてRunすると、
Windows Binariesが32-bitだと、
以下のように、
OSError: [WinError 193] %1 is not a valid Win32 application
というエラーが出ます。

OSError Traceback (most recent call last) <ipython-input-1-bb94c1b557c7> in <module> ----> 1 import openslide ~\Anaconda3\envs\tesnsorflow_gpu_with_kivy\lib\site-packages\openslide\__init__.py in <module> 27 from PIL import Image 28 ---> 29 from openslide import lowlevel 30 31 # For the benefit of library users ~\Anaconda3\envs\tesnsorflow_gpu_with_kivy\lib\site-packages\openslide\lowlevel.py in <module> 39 40 if platform.system() == 'Windows': ---> 41 _lib = cdll.LoadLibrary('libopenslide-0.dll') 42 elif platform.system() == 'Darwin': 43 try: ~\Anaconda3\envs\tesnsorflow_gpu_with_kivy\lib\ctypes\__init__.py in LoadLibrary(self, name) 424 425 def LoadLibrary(self, name): --> 426 return self._dlltype(name) 427 428 cdll = LibraryLoader(CDLL) ~\Anaconda3\envs\tesnsorflow_gpu_with_kivy\lib\ctypes\__init__.py in __init__(self, name, mode, handle, use_errno, use_last_error) 346 347 if handle is None: --> 348 self._handle = _dlopen(self._name, mode) 349 else: 350 self._handle = handle OSError: [WinError 193] %1 is not a valid Win32 application

Windows Binariesが64-bitだと、
イメージ説明
windows上に
上の、「エントリポイントが見つかりません」という4つのエラーが出たあと、
jupyter上に
下の
OSError: [WinError 127] The specified procedure could not be found
というエラーが出ます。

OSError Traceback (most recent call last) <ipython-input-1-bb94c1b557c7> in <module> ----> 1 import openslide ~\Anaconda3\envs\tesnsorflow_gpu_with_kivy\lib\site-packages\openslide\__init__.py in <module> 27 from PIL import Image 28 ---> 29 from openslide import lowlevel 30 31 # For the benefit of library users ~\Anaconda3\envs\tesnsorflow_gpu_with_kivy\lib\site-packages\openslide\lowlevel.py in <module> 39 40 if platform.system() == 'Windows': ---> 41 _lib = cdll.LoadLibrary('libopenslide-0.dll') 42 elif platform.system() == 'Darwin': 43 try: ~\Anaconda3\envs\tesnsorflow_gpu_with_kivy\lib\ctypes\__init__.py in LoadLibrary(self, name) 424 425 def LoadLibrary(self, name): --> 426 return self._dlltype(name) 427 428 cdll = LibraryLoader(CDLL) ~\Anaconda3\envs\tesnsorflow_gpu_with_kivy\lib\ctypes\__init__.py in __init__(self, name, mode, handle, use_errno, use_last_error) 346 347 if handle is None: --> 348 self._handle = _dlopen(self._name, mode) 349 else: 350 self._handle = handle OSError: [WinError 127] The specified procedure could not be found

あと、
Python 3.6.7 (default, Jul 2 2019, 02:21:41) [MSC v.1900 64 bit (AMD64)] on win32
なのですが、
win binaries fileは64 or 32 bitどちらを使うべきなのでしょうか?

よろしくお願いします。

補足情報

OS : windows10
CPU : Intel(R)Core(TM)i9-9900X CPU @ 3.50GHz
RAM : 128 GB
64bit OS
グラボ :ZOTAC GAMING GeForce RTX 2080 AMP Edition (2台)
Python 3.6.7 (default, Jul 2 2019, 02:21:41) [MSC v.1900 64 bit (AMD64)] on win32
anaconda環境で動かしています。

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

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

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

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

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

guest

回答1

0

ベストアンサー

1が「どの (what)」ファイルを「どうやって(how)」インストールするのかがわかりません。

使用するのはWindows Binaries 32-bitでよいと思います。
Windows Binaries 64bitを使用してください。
binフォルダのDLLファイルを使っているPython.exeが置いてある同じディレクトリに置いてみてください。
※本当は64 bit windowsの32bit DLLはC:\Windows\SysWOW64に置くべきなのしれませんが最初はお勧めしません。
※本当は64 bit windowsの32bit DLLはC:\Windows\systemに置くべきなのしれませんが最初はお勧めしません。
環境変数Pathは実行ファイル(exe)の検索パスになるだけでDLLには効果はないと思います。

自分の場合はwindows10 64bit+公式Python (x86_64)なので
1.64bit版をDLし、binフォルダにあるDLLファイルすべてをPythonのインストールディレクトリ(Python.exeのあるフォルダ)に置く
1.pip install openslide-python実施
することで、Pythonのインタラクティブモードでimport openslideをPassすることができました。

.dll.debugも?

不要です。

投稿2019/09/28 08:42

編集2019/09/28 16:46
nomuken

総合スコア1627

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

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

SakuSakuLab

2019/09/28 10:20

nomuken様 前回に引き続き、ご教示、本当にありがとうございます。 助かります! 今現在、全Windows PCが中断できない作業を進行中でして、 早くとも夜中にならないと使用できない状態です。 終わり次第、早速試してみます。 1,Windows Binaries 32-bitをDLする。 2,Windows Binaries 32-bitのbinフォルダ内のDLLファイルをコピー(.dllだけ?.dll.debugも?) 3,コピーしたものをPython.exeが置いてある同じディレクトリにペースト (私の場合はanacondaでpythonをインストールしているのでC:\Users\SakuLab2\Anaconda3?) 4,pip install openslide-python てな感じで試してみます。 ありがとうございます!
SakuSakuLab

2019/09/28 16:37

momuken様 駄目でした。 1,Windows Binaries 32-bit(openslide-win32-20171122)をDLする。 2,Windows Binaries 32-bitのbinフォルダ内のDLLファイル (.dllのみ20ファイル)をコピー 3,コピーしたものをPython.exeが置いてある同じディレクトリにペースト (C:\Users\SakuLab2\Anaconda3) 4,pip install openslide-python jupyter notebookでもインタラクティブモードでも OSError: [WinError 193] %1 is not a valid Win32 application が出てしまいます。 DLLファイルを実際に使うアナコンダ環境 (C:\Users\SakuLab2\Anaconda3\envs\tesnsorflow_gpu_with_kivy) にコピペしても駄目でした。 その後、 C:\Windows\SysWOW64 にもコピーしましたが駄目でした(その後削除)。 再起動、などいろいろ試したのですが、駄目でした。 ただ、なぜかuninstall (pip uninstall openslide-python) してから import openslide とするとpassすることが出来ました。 pip listで確認してもしっかりuninstallされています。 ただこれだと、 openslideの基本動作の画像の読み込み img = openslide.OpenSlide("filename") を行うと、 AttributeError: module 'openslide' has no attribute 'OpenSlide' とエラーが出てしまい。実行することが出来ません(Linuxではこんなエラーは起きないのですが)。 何か、考えられる可能性がありますか? あと、32-bitってなにが32-bitなのでしょうか? PCは64bitだし、Anacondaも64bit版をDLしたような、、、。 python も確認したら64bitだし。 なにかアイデアいただけたら助かります。 よろしくお願いします。
nomuken

2019/09/28 16:47

夜遅くまでお疲れ様です・・・。 32bit binaryを使ってくださいといったのは完全に私の認識誤りでした。64bit binaryで挑戦してみてください。
SakuSakuLab

2019/09/28 17:09

nomuken様 (お名前間違えてすいません。) 即レスありがとうございます。 大変心強いです。 64-bitでtryしてみます。 帰宅してしまったため、 仕切り直します。 よろしくお願いします。
SakuSakuLab

2019/09/29 09:25

nomuken 様 64-bit versionを使ったところ あっさりopenslideを使えるようになりました! ネットを調べても埒が明かず、 途方に暮れていたところを 助けていただき、またもや感謝です! おかげで今週末の締切に間に合いそうです。 ありがとうございました! 今後ともどうぞよろしくお願いします。 ベストアンサーにさせていただきます。 (備忘録) openslide-python windows install方法 1,https://openslide.org/download/ のWindows Binariesファイル 2017-11-22 64-bit versionをDL 2,bin内の20個の.dllファイルを copy to Anaconda3\envs\tesnsorflow_gpu_with_kivy (python.exeがあるフォルダ) 3,(anaconda prompt) pip install openslide-python (tesnsorflow_gpu_with_kivyで)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問