본문 바로가기
Camera

Diffractsim 수동 설치 방법

by 이센 2025. 2. 12.

GitHub에서 다운로드한 diffractsim을 Python에서 사용하려면, 먼저 압축을 해제한 후 적절한 방법으로 패키지를 import할 수 있도록 설정해야 합니다. 일반적으로 pip install diffractsim으로 설치한 경우에는 자동으로 Python의 패키지 경로에 추가되지만, GitHub에서 직접 다운로드한 경우에는 수동으로 경로를 지정해 주어야 합니다.


1. pip install -e .를 이용한 설치

GitHub에서 받은 diffractsim 패키지를 Python에서 사용하려면, 먼저 해당 폴더에서 pip install -e . 명령을 실행해야 합니다. 이를 위해 다음 단계를 따릅니다.

  1. 압축을 푼 폴더로 이동
    다운로드한 diffractsim 폴더(예: diffractsim-main)로 이동합니다.
    터미널 또는 명령 프롬프트에서 다음 명령을 실행합니다.
  2. bash
    CopyEdit
    cd /path/to/diffractsim-main
  3. 패키지 설치 실행
    해당 폴더에서 다음 명령을 입력하여 패키지를 설치합니다.여기서 .(dot)은 현재 디렉토리를 의미하며, pip가 현재 디렉토리를 패키지로 인식하여 설치하도록 합니다.
  4. bash
    CopyEdit
    pip install -e .

2. 설치가 정상적으로 이루어졌는지 확인

설치가 완료된 후, Python을 실행하여 패키지가 정상적으로 import되는지 확인할 수 있습니다. 다음과 같은 명령을 실행합니다.

python
CopyEdit
 
import diffractsim print(diffractsim.__version__)

 

위 명령이 오류 없이 실행되면, diffractsim이 정상적으로 설치된 것입니다.


3. 추가 확인 사항

  • pip install -e .를 실행하기 전에, diffractsim-main 폴더 안에 setup.py 또는 pyproject.toml 파일이 존재하는지 확인해야 합니다. 해당 파일이 없으면 pip install -e .이 정상적으로 실행되지 않을 수 있습니다.
  • 만약 가상 환경(venv)을 사용하고 있다면, 해당 환경을 활성화한 후 위 명령을 실행해야 합니다.
  • 설치가 정상적으로 되었더라도, import diffractsim을 실행할 때 오류가 발생한다면 Python이 해당 패키지를 찾을 수 있는 경로에 있는지 확인해야 합니다. 필요할 경우 sys.path.append("/path/to/diffractsim-main")를 추가하여 경로를 지정할 수도 있습니다.

4. aperture 파일을 절대경로로 지정하는 방법

작업을 하기 전에 Example File 에서 돌리는 작업환경의 Directory 가 어디에 있는지 확인이 필요합니다.

import os
print("현재 작업 디렉토리:", os.getcwd())

 

결과가 D:\2025_LensPSF\diffractsim_main 으로 나온다면, aperture Directory를 diffraction_main 아래로 놓아야, 

각 example 파일들이 실행됩니다. 

 

그래서 diffractsim에서 aperture 파일을 그냥 Test 할 때는, 상대경로 대신 절대경로를 지정하는 것이 보다 안전합니다.

이를 위해 import os를 활용하여 경로를 정의할 수 있습니다.

예를 들어, diffractsim-main/apertures/ 폴더 안에 특정 aperture 파일(예: circular_aperture.png)이 있다고 가정하면, 다음과 같이 절대경로를 설정할 수 있습니다

import os # 현재 스크립트 파일이 위치한 디렉토리 경로 가져오기
base_dir = os.path.dirname(os.path.abspath(__file__)) # aperture 폴더의 절대경로 설정
aperture_path = os.path.join(base_dir, "apertures", "circular_aperture.png")
print(f"Aperture file absolute path: {aperture_path}") # diffractsim에서 aperture 파일 사용 예제

from diffractsim import Aperture aperture = Aperture(file=aperture_path)
 

 

위 코드에서 os.path.abspath(__file__)을 사용하면 현재 실행 중인 Python 스크립트의 위치를 기준으로 apertures 폴더 안의 파일을 절대경로로 가져올 수 있습니다. 이를 통해 실행 환경이 달라지더라도 경로 문제 없이 aperture 파일을 불러올 수 있습니다.

이와 같은 과정을 거치면, GitHub에서 다운로드한 diffractsim을 Python에서 문제없이 사용할 수 있으며, aperture 파일도 안전하게 로드할 수 있습니다.