こんにちは。
Windows環境でのC++の推論実行で、下記の2点で行き詰っています。
1. nnp、pgm画像の作成ができない
2. C++のための環境を構築後に、NNCが動かなくなった
~~~~~
動作環境
Windows10
neural network console1.1.6
nnabla0.9.9
~~~~~~
1. nnp、pgm画像の作成ができない
以下に従って、C++の環境を構築し、サンプルプログラムが動くのを確認しました。
NNCで作成したほかの推論器も動かしたいと思ったのですが、nnpファイルとpgmファイルの作成方法がわかりません。
nnpはh5ファイルをprotobufに変換し、zipにした後に拡張子を変更しましたが、読み込めません。
pgmはフリーソフトで画像変換をかけましたが、これも同じく読み込めません。
できれば、ソースコードやコマンドレベルで変換する手段があれば、ご教示いただけたらと思います。
2. C++のための環境を構築後に、NNCが動かなくなった
C++の環境構築後にNNC(nnalba)を実行するとhdf5周りのエラーがでて、実行できなくなりました。
出ているエラーは下に記載します。
おそらく、Microsoft Visual Studio 14.0あたりが原因だと思うのですが、
パスを通したり、バージョンが高いものをインストールしても問題が解決しません。
修正案をいただければと思います。
●NNC実行時
2018-07-03 09:17:45,833 Training process is started.
python "C:\XXX\neural_network_console\libs\nnabla\python\src\nnabla\utils\cli\cli.py" train
-c "C:\XXX\neural_network_console\surface_detection\caffe_base.files\20180703_091745\net.nntxt"
-o "C:\XXX\neural_network_console\surface_detection\caffe_base.files\20180703_091745"
2018-07-03 09:17:46,683 [nnabla]: Creating cache data for "C:\XXX\neural_network_console\XXX\XXXcsv"
2018-07-03 09:17:47,894 [nnabla]: Creating cache data for "C:\XXX\neural_network_console\XXX\XXX.csv"
2018-07-03 09:17:53,559 [nnabla]: Train with contexts {'cpu': ['default'], 'cuda': ['default', 'cudnn']}
Exception in thread Thread-1:
Traceback (most recent call last):
File "C:\XXX\neural_network_console\libs\Miniconda3\lib\threading.py", line 916, in _bootstrap_inner
self.run()
File "C:\XXX\neural_network_console\libs\Miniconda3\lib\threading.py", line 864, in run
self._target(*self._args, **self._kwargs)
File "C:\XXX\neural_network_console\libs\nnabla\python\src\nnabla\utils\cli\cli.py", line 154, in main
args.func(args)
File "C:\XXX\neural_network_console\libs\nnabla\python\src\nnabla\utils\cli\train.py", line 246, in train_command
o.optimizer.data_iterator())
File "C:\XXX\neural_network_console\libs\nnabla\python\src\nnabla\utils\load.py", line 395, in <lambda>
cache_dir, batch_size, shuffle, normalize=dataset.normalize))
File "C:\XXX\neural_network_console\libs\nnabla\python\src\nnabla\utils\data_iterator.py", line 432, in data_iterator_cache
normalize=normalize)
File "C:\XXX\neural_network_console\libs\nnabla\python\src\nnabla\utils\data_source_implements.py", line 85, in __init__
with self._filereader.open_cache(filename) as cache:
File "C:\XXX\neural_network_console\libs\Miniconda3\lib\contextlib.py", line 81, in __enter__
return next(self.gen)
File "C:\XXX\neural_network_console\libs\nnabla\python\src\nnabla\utils\data_source_loader.py", line 148, in open_cache
with h5py.File(filename, 'r') as h5:
File "C:\XXX\neural_network_console\libs\Miniconda3\lib\site-packages\h5py\_hl\files.py", line 269, in __init__
fid = make_fid(name, mode, userblock_size, fapl, swmr=swmr)
File "C:\XXX\neural_network_console\libs\Miniconda3\lib\site-packages\h5py\_hl\files.py", line 99, in make_fid
fid = h5f.open(name, flags, fapl=fapl)
File "h5py\_objects.pyx", line 54, in h5py._objects.with_phil.wrapper
File "h5py\_objects.pyx", line 55, in h5py._objects.with_phil.wrapper
File "h5py\h5f.pyx", line 78, in h5py.h5f.open
OSError: Unable to open file (file signature not found)
●nnabla(pythonからの実行)
Warning! ***HDF5 library version mismatched error***
The HDF5 header files used to compile this application do not match
the version used by the HDF5 library to which this application is linked.
Data corruption or segmentation faults may occur if the application continues.
This can happen when an application was compiled by one version of HDF5 but
linked with a different version of static or shared HDF5 library.
You should recompile the application or check your shared library related
settings such as 'LD_LIBRARY_PATH'.
You can, at your own risk, disable this warning by setting the environment
variable 'HDF5_DISABLE_VERSION_CHECK' to a value of '1'.
Setting it to 2 or higher will suppress the warning messages totally.
Headers are 1.10.2, library is 1.10.1
SUMMARY OF THE HDF5 CONFIGURATION
=================================
General Information:
-------------------
HDF5 Version: 1.10.1
Configured on: 2017-05-08
Configured by: Visual Studio 14 2015 Win64
Host system: Windows-10.0.15063
Uname information: Windows
Byte sex: little-endian
Installation point: C:/Program Files/HDF5
Compiling Options:
------------------
Build Mode:
Debugging Symbols:
Asserts:
Profiling:
Optimization Level:
Linking Options:
----------------
Libraries:
Statically Linked Executables: OFF
LDFLAGS: /machine:x64
H5_LDFLAGS:
AM_LDFLAGS:
Extra libraries: X:inclib-vc14-x64/zlib.lib;X:/inclib-vc14-x64/libsz.lib;X:/inclib-vc14-x64/libaec.lib
Archiver:
Ranlib:
Languages:
----------
C: yes
C Compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe 19.0.24215.1
CPPFLAGS:
H5_CPPFLAGS:
AM_CPPFLAGS:
CFLAGS: /DWIN32 /D_WINDOWS /W3
H5_CFLAGS:
AM_CFLAGS:
Shared C Library: YES
Static C Library: YES
Fortran: OFF
Fortran Compiler:
Fortran Flags:
H5 Fortran Flags:
AM Fortran Flags:
Shared Fortran Library: YES
Static Fortran Library: YES
C++: ON
C++ Compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe 19.0.24215.1
C++ Flags: /DWIN32 /D_WINDOWS /W3 /GR /EHsc
H5 C++ Flags:
AM C++ Flags:
Shared C++ Library: YES
Static C++ Library: YES
JAVA: OFF
JAVA Compiler:
Features:
---------
Parallel HDF5: OFF
High-level library: ON
Threadsafety: OFF
Default API mapping: v110
With deprecated public symbols: ON
I/O filters (external): DEFLATE DECODE ENCODE
MPE:
Direct VFD:
dmalloc:
Packages w/ extra debug output:
API Tracing: OFF
Using memory checker: OFF
Memory allocation sanity checks: OFF
Metadata trace file:
Function Stack Tracing: OFF
Strict File Format Checks: OFF
Optimization Instrumentation:
Bye...