本家様 https://github.com/rsanchezgarc/deepEMhancer

gitには

Simply speaking, DeepEMhancer performs a non-linear post-processing of cryo-EM maps that produces two main effects:
1. Local sharpening-like post-processing.
2. Automatic masking/denoising of cryo-EM maps.

とある. cryoSPARCからもコールされるようになっている.

インストール環境はこんな感じ

[root@r9 ~]# cat /etc/redhat-release
Rocky Linux release 9.7 (Blue Onyx)
 
[root@r9 ~]# cat /proc/driver/nvidia/version
NVRM version: NVIDIA UNIX Open Kernel Module for x86_64  595.58.03  Release Build  (dvs-builder@U22-I3-AM25-28-3)  Tue Mar 17 19:55:10 UTC 2026
GCC version:  gcc version 11.5.0 20240719 (Red Hat 11.5.0-11) (GCC)
 
[root@r9 ~]# nvidia-smi -L
GPU 0: NVIDIA RTX PRO 2000 Blackwell (UUID: GPU-40660e37-0d35-d4f4-294a-eee3fe83049e)
 
[root@r9 ~]#

「/usr/local/cuda」は用意していないです

インストール

DeepEMhancerはpythonアプリなので、ここではcrYOLOのようにpyenv/anacondaの環境にDeepEMhancer実行環境を用意していきます

pyenv/anaconda環境がないなら下記のように敷設して

git clone https://github.com/yyuu/pyenv.git /apps/pyenv
export PYENV_ROOT=/apps/pyenv
export PATH=$PYENV_ROOT/bin:$PATH
pyenv install miniforge3-26.1.1-3
 
source /apps/pyenv/versions/miniforge3-26.1.1-3/etc/profile.d/conda.sh
conda update conda
 
(既に環境があるなら)
 
source /apps/pyenv/versions/miniforge3-26.1.1-3/etc/profile.d/conda.sh

っで、DeepEMhancer を入れていきます.

[root@r9 ~]# cd /apps/
 
[root@r9 apps]# git clone https://github.com/rsanchezgarc/deepEMhancer
[root@r9 apps]# cd deepEMhancer/
[root@r9 deepEMhancer]#
[root@r9 deepEMhancer]# ls -CF
alternative_installation/  condaDeepEMHancer/  conda_ymls/  deepEMhancer/  deepEMhancer_env.yml  deepEMhancer_tutorial.pdf  LICENSE  README.md  setup.py
 
[root@r9 deepEMhancer]#
 
[root@r9 deepEMhancer]# conda env create -f deepEMhancer_env.yml  -n deepEMhancer_env
 
[root@r9 deepEMhancer]#

作った deepEMhancer 実行環境に対して

[root@r9 deepEMhancer]# conda activate deepEMhancer_env
 
(deepEMhancer_env) [root@r9 deepEMhancer]#
 
(deepEMhancer_env) [root@r9 deepEMhancer]# conda list
 :
cudatoolkit                     11.8.0           h4ba93d1_13             conda-forge
 :
h5py                            3.9.0            nompi_py39h87cadad_103  conda-forge
 :
nvidia-cublas-cu11              11.11.3.6        pypi_0                  pypi
nvidia-cudnn-cu11               8.6.0.163        pypi_0                  pypi
 :
python                          3.9.23           hc30ae73_0_cpython      conda-forge
 :
tensorboard                     2.12.3           pypi_0                  pypi
tensorboard-data-server         0.7.1            pypi_0                  pypi
tensorflow                      2.12.0           pypi_0                  pypi
tensorflow-estimator            2.12.0           pypi_0                  pypi
tensorflow-io-gcs-filesystem    0.32.0           pypi_0                  pypi
 :
(deepEMhancer_env) [root@r9 deepEMhancer]# which python
/apps/pyenv/versions/miniforge3-26.1.1-3/envs/deepEMhancer_env/bin/python
 
(deepEMhancer_env) [root@r9 deepEMhancer]# pwd
/apps/deepEMhancer
 
(deepEMhancer_env) [root@r9 deepEMhancer]# python -m pip install . --no-deps
(deepEMhancer_env) [root@r9 deepEMhancer]# conda list
 :
deepemhancer                    0.17             pypi_0                  pypi
 :
(deepEMhancer_env) [root@r9 deepEMhancer]#

これで一応インストールは完了です

動作確認

GPUを利用して計算速度を向上できます
実際にGPUが使えるかのテストをしてみます

(deepEMhancer_env) [root@r9 deepEMhancer]# deepemhancer --version           バージョン確認
0.16
(deepEMhancer_env) [root@r9 deepEMhancer]# python
 :
 :
>>> import tensorflow as tf
2026-05-12 18:17:12.188174: I tensorflow/core/util/port.cc:110] oneDNN custom operations are on. You may see slightly different numerical results due to floating-point (改行
     round-off errors from different computation orders. To turn them off, set the environment variable `TF_ENABLE_ONEDNN_OPTS=0`.
2026-05-12 18:17:12.189510: I tensorflow/tsl/cuda/cudart_stub.cc:28] Could not find cuda drivers on your machine, GPU will not be used.
2026-05-12 18:17:12.212955: I tensorflow/tsl/cuda/cudart_stub.cc:28] Could not find cuda drivers on your machine, GPU will not be used.
2026-05-12 18:17:12.213304: I tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
To enable the following instructions: AVX2 AVX_VNNI FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.
2026-05-12 18:17:12.558479: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT
/apps/pyenv/versions/miniforge3-26.1.1-3/envs/deepEMhancer_env/lib/python3.9/site-packages/h5py/__init__.py:36: UserWarning: h5py is running against HDF5 1.14.3 when it was built against 1.14.2, this may cause problems
  _warn(("h5py is running against HDF5 {0} when it was built against {1}, "
>>>
>>>

と検証前に「UserWarning: h5py is running against HDF5 1.14.3 when it was built against 1.14.2」や「TF-TRT Warning: Could not find TensorRT」「Could not find cuda drivers on your machine, GPU will not be used」と言われる.
h5pyに関しては現状 h5py 3.9.0 を h5py 3.10.0 にすることで抑えられる.
TensorRTに関しては新規に tensorrt 8.6.1 と LD_LIBRARY_PATH の定義で抑えられる
「Could not find cuda drivers...」も LD_LIBRARY_PATH で抑えられる

(deepEMhancer_env) [root@r9 deepEMhancer]# pip install h5py==3.10.0 tensorrt==8.6.1
(deepEMhancer_env) [root@r9 deepEMhancer]# conda list
 :
h5py                            3.10.0           pypi_0                pypi
 :
tensorrt                        8.6.1            pypi_0                pypi
tensorrt-bindings               8.6.1            pypi_0                pypi
tensorrt-libs                   8.6.1            pypi_0                pypi
 :
(deepEMhancer_env) [root@r9 deepEMhancer]# export LD_LIBRARY_PATH=/apps/pyenv/versions/miniforge3-26.1.1-3/envs/deepEMhancer_env/lib
(deepEMhancer_env) [root@r9 deepEMhancer]# export LD_LIBRARY_PATH=/apps/pyenv/versions/miniforge3-26.1.1-3/envs/deepEMhancer_env/lib/python3.9/site-packages/nvidia/cudnn/lib:$LD_LIBRARY_PATH
(deepEMhancer_env) [root@r9 deepEMhancer]# export LD_LIBRARY_PATH=/apps/pyenv/versions/miniforge3-26.1.1-3/envs/deepEMhancer_env/lib/python3.9/site-packages/tensorrt_libs:$LD_LIBRARY_PATH
(deepEMhancer_env) [root@r9 deepEMhancer]# python
 :
>>> import tensorflow as tf
2026-05-12 18:28:50.496788: I tensorflow/core/util/port.cc:110] oneDNN custom operations are on. You may see slightly different numerical results due to floating-point (改行
          round-off errors from different computation orders. To turn them off, set the environment variable `TF_ENABLE_ONEDNN_OPTS=0`.
2026-05-12 18:28:50.618472: I tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
To enable the following instructions: AVX2 AVX_VNNI FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.
>>>
(っでGPU確認)
>>>
>>> tf.test.is_gpu_available()
(略)
True
>>> quit();
(deepEMhancer_env) [root@r9 deepEMhancer]# conda deactivate
[root@r9 deepEMhancer]#

EnvironmentModules

[root@r9 ~]# vi /apps/modulefiles/deepEMhancer
#%Module1.0
set          root       /apps/pyenv/versions/miniforge3-26.1.1-3/envs/deepEMhancer_env
prepend-path PATH       $root/bin
prepend-path LD_LIBRARY_PATH $root/lib:$root/lib/python3.9/site-packages/nvidia/cudnn/lib:$root/lib/python3.9/site-packages/tensorrt_libs
 
[root@r9 ~]#

つかう

モデルファイルが必要ですが、/appsとかに配置しておきます

[root@r9 ~]# module use /apps/modulefiles
[root@r9 ~]# module load deepEMhancer
 
[root@r9 ~]# deepemhancer --download /apps/deepEMhancerModels
 
[root@r9 ~]# ls -l /apps/deepEMhancerModels/
total 0
drwxr-xr-x 2 root root 160 May 12 18:41 production_checkpoints
[root@r9 ~]# ls -l /apps/deepEMhancerModels/production_checkpoints/
total 904376
-rw-r--r-- 1 root root 311505312 May 12 18:41 deepEMhancer_highRes.hd5
-rw-r--r-- 1 root root 204777344 May 12 18:41 deepEMhancer_masked.hd5
-rw-r--r-- 1 root root 204886472 May 12 18:41 deepEMhancer_tightTarget.hd5
-rw-r--r-- 1 root root 204897936 May 12 18:41 deepEMhancer_wideTarget.hd5
-rw-r--r-- 1 root root        74 May 12 18:41 versions.txt
[root@r9 ~]

っでテストrunです.

[saber@r9 ~]$ module use /apps/modulefiles/
[saber@r9 ~]$ module load deepEMhancer
 
[saber@r9 ~]$ cd test/
[saber@r9 test]$ deepemhancer -h
usage: deepemhancer -i INPUTMAP -o OUTPUTMAP [-p {wideTarget,tightTarget,highRes}] [-i2 HALFMAP2] [-s SAMPLINGRATE] [--noiseStats NOISE_MEAN NOISE_STD]
                    [-m BINARYMASK] [--deepLearningModelPath PATH_TO_MODELS_DIR] [--cleaningStrengh CLEANINGSTRENGH] [-g GPUIDS] [-b BATCH_SIZE]
                    [--version] [-h] [--download [DOWNLOAD_DEST]]
 
(略
[saber@r9 test]$

これが正しいか不明ですが、relionのデータを使って流してみた.

[saber@r9 test]$ mkdir deepEMhancer
[saber@r9 test]$ cd deepEMhancer/
[saber@r9 deepEMhancer]$
 
[saber@r9 deepEMhancer]$ deepemhancer -i ../Tutorial5.0/Refine3D/job029/run_it000_half1_class001.mrc \
                                     -i2 ../Tutorial5.0/Refine3D/job029/run_it000_half2_class001.mrc \
                 -p tightTarget -o model.mrc --deepLearningModelPath  /apps/deepEMhancerModels/production_checkpoints/   -g 0
 
updating environment to select gpu: [0]
loading model /apps/deepEMhancerModels/production_checkpoints/deepEMhancer_tightTarget.hd5 ... DONE!
Automatic radial noise detected beyond 36 % of volume side
DONE!. Shape at 1.00 A/voxel after padding->  (320, 320, 320)
Neural net inference
 :
[saber@r9 deepEMhancer]$ ls -l
total 65540
-rw-r--r-- 1 saber saber 67109888 May 12 19:24 model.mrc
[saber@r9 deepEMhancer]$
deepEMhancerCS.sh
 
 
#!/bin/bash
d=/apps/pyenv/versions/miniforge3-26.1.1-3/envs/deepEMhancer
 
export PATH=$d/bin:$PATH
export LD_LIBRARY_PATH=$d/lib:$d/lib/python3.9/site-packages/nvidia/cudnn/lib:$LD_LIBRARY_PATH
 
$d/bin/deepemhancer $@
unset d
最新の60件
2026-06-16 2026-06-14 2026-06-13 2026-06-09 2026-06-08 2026-06-06 2026-06-05 2026-06-04 2026-06-03 2026-05-31 2026-05-28 2026-05-26 2026-05-23 2026-05-22 2026-05-21 2026-05-20 2026-05-19 2026-05-18 2026-05-12
  • DeepEMhancer
2026-05-11 2026-05-08 2026-05-06 2026-05-05 2026-05-03 2026-04-30 2026-04-29 2026-04-28 2026-04-27 2026-04-25 2026-04-24 2026-04-22 2026-04-21 2026-04-12 2026-04-08 2026-04-06 2026-04-05 2026-04-02 2026-03-26 2026-03-23 2026-03-21 2026-03-19

edit


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2026-05-12 (火) 19:25:32