numpy 배열 이미지를 저장하고 단일 폴더에 넣는 방법은 무엇입니까?

kdf

5000 28 x 28 이미지 (5000,28,28)를 포함하는 numpy 배열이 있습니다. 이 모든 이미지를 jpg 파일로 저장하고 모두 단일 폴더에 저장하고 싶습니다. 이를 수행하는 가장 빠르고 효율적인 방법은 무엇입니까?

마크 세첼

다음을 사용하여 28x28 이미지 50,000 개를 JPEG로 디스크에 쓰려고했습니다.

  • 순차 코드 (25 초)
  • 멀티 스레드 코드 (19 초)
  • 다중 처리 코드 (5 초)

SSD가 장착 된 12 코어 MacBook Pro에서. 시간은 위 목록의 각 항목 뒤에 괄호 안에 표시됩니다.

#!/usr/bin/env python3

import numpy as np
import imageio
from multiprocessing import Pool
from multiprocessing.pool import ThreadPool

def WriteOne(i,data):
    """Write a single image to disk"""
    #print(f"WriteOne called with i={i}")
    imageio.imwrite(f"image-{i:04d}.jpg", data)

def WriteSequential(images):
    """Write all images sequentially to disk"""
    print("Sequential")
    for i, data in enumerate(images):
        WriteOne(i, data)
    return

def WriteIndices(p):
    """Write given index to disk as JPEG"""
    #print(f"WriteIndices {p[0]}")
    WriteOne(p[0], p[1])
    return

def WriteMultiThread(images):
    """Write all images  to disk with multi-threading"""
    print("MultiThread")
    nThreads = 8
    with ThreadPool(nThreads) as pool:
        pool.map(WriteIndices, list(enumerate(images)))
    return

def WriteMultiProcess(images):
    """Write all images  to disk with multi-processing"""
    print("MultiProcess")
    nProcesses = 8
    with Pool(nProcesses) as pool:
        pool.map(WriteIndices, list(enumerate(images)))
    return

if __name__ == '__main__':

    # Synthesize 50000 images, each 28x28
    N = 50000
    images = np.random.randint(0,256,(N,28,28), dtype=np.uint8)

    WriteSequential(images)

    WriteMultiThread(images)

    WriteMultiProcess(images)

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

파일에 저장하지 않고 Qt에서 numpy 배열을 재생하는 방법은 무엇입니까?

분류에서Dev

인코딩 된 바이트 배열에서 PNG 이미지를 읽고 numpy 배열에 저장하는 방법은 무엇입니까?

분류에서Dev

폴더의 파일 이름을 C ++의 배열에 저장하는 방법은 무엇입니까?

분류에서Dev

Android 활동에 이미지를 타일링하고 배경색을 넣는 방법은 무엇입니까?

분류에서Dev

Android 활동에 이미지를 타일링하고 배경색을 넣는 방법은 무엇입니까?

분류에서Dev

이미지를 저장하지 않고 Numpy 배열 이미지를 JPEG로 변환하는 방법은 무엇입니까?

분류에서Dev

가져온 iCloud 데이터 개체를 단일 배열에 저장하는 방법은 무엇입니까?

분류에서Dev

폴더에 이미지를 저장하는 방법은 무엇입니까?

분류에서Dev

테이블의 단일 요소에 전체 배열을 저장하는 방법은 무엇입니까?

분류에서Dev

입력 numpy 배열에서 행을 선택하고 출력 배열의 해당 행에 작업 결과를 저장하는 방법은 무엇입니까?

분류에서Dev

s3에서 numpy 배열로 이미지를 다운로드하는 방법은 무엇입니까?

분류에서Dev

이미지를 배경에 삽입하고 JAVA로 저장하는 방법은 무엇입니까?

분류에서Dev

바탕 화면 배경 이미지를 C #의 파일에 저장하는 방법은 무엇입니까?

분류에서Dev

csv 값을 Python에서 numpy 배열에 파일로 저장하는 방법은 무엇입니까?

분류에서Dev

폴더 이름을 전달하여 파일을 폴더에 저장하는 방법은 무엇입니까?

분류에서Dev

base64 문자열의 이미지를 flutter로 파일에 저장하는 방법은 무엇입니까?

분류에서Dev

배열에 각 이미지 이름을 입력하는 대신 폴더에서 동적으로 이미지를로드하는 방법은 무엇입니까?

분류에서Dev

단일 Numpy ndarray로 폴더에있는 여러 PPM 파일을로드하는 방법은 무엇입니까?

분류에서Dev

laravel5.4의 저장 폴더에 저장된 이미지를 검색하는 방법은 무엇입니까?

분류에서Dev

배열에 대한 참조를 저장하지 않고 일부 배열 값으로 객체를 만드는 방법은 무엇입니까?

분류에서Dev

null 일 때 모델에서 바이트 배열 이미지를 표시하는 방법은 무엇입니까?

분류에서Dev

null 일 때 모델에서 바이트 배열 이미지를 표시하는 방법은 무엇입니까?

분류에서Dev

30 차원 numpy 배열을 사람이 읽을 수있는 txt 파일에 파이썬으로 저장하는 방법은 무엇입니까?

분류에서Dev

Python 배열 또는 numpy 배열에서 nan 또는 invalid를 필터링하는 더 간단한 방법은 무엇입니까?

분류에서Dev

입력 파일의 단어를 배열에 넣는 방법은 무엇입니까?

분류에서Dev

파일을 읽고 객체 배열에 넣는 방법은 무엇입니까?

분류에서Dev

엑셀 파일을 읽고 배열에 넣는 방법은 무엇입니까?

분류에서Dev

1d json 배열에 열을 추가하고 파일에 저장하는 방법은 무엇입니까?

분류에서Dev

배열로 파일 세트를 저장하는 더 좋은 방법은 무엇입니까?

Related 관련 기사

  1. 1

    파일에 저장하지 않고 Qt에서 numpy 배열을 재생하는 방법은 무엇입니까?

  2. 2

    인코딩 된 바이트 배열에서 PNG 이미지를 읽고 numpy 배열에 저장하는 방법은 무엇입니까?

  3. 3

    폴더의 파일 이름을 C ++의 배열에 저장하는 방법은 무엇입니까?

  4. 4

    Android 활동에 이미지를 타일링하고 배경색을 넣는 방법은 무엇입니까?

  5. 5

    Android 활동에 이미지를 타일링하고 배경색을 넣는 방법은 무엇입니까?

  6. 6

    이미지를 저장하지 않고 Numpy 배열 이미지를 JPEG로 변환하는 방법은 무엇입니까?

  7. 7

    가져온 iCloud 데이터 개체를 단일 배열에 저장하는 방법은 무엇입니까?

  8. 8

    폴더에 이미지를 저장하는 방법은 무엇입니까?

  9. 9

    테이블의 단일 요소에 전체 배열을 저장하는 방법은 무엇입니까?

  10. 10

    입력 numpy 배열에서 행을 선택하고 출력 배열의 해당 행에 작업 결과를 저장하는 방법은 무엇입니까?

  11. 11

    s3에서 numpy 배열로 이미지를 다운로드하는 방법은 무엇입니까?

  12. 12

    이미지를 배경에 삽입하고 JAVA로 저장하는 방법은 무엇입니까?

  13. 13

    바탕 화면 배경 이미지를 C #의 파일에 저장하는 방법은 무엇입니까?

  14. 14

    csv 값을 Python에서 numpy 배열에 파일로 저장하는 방법은 무엇입니까?

  15. 15

    폴더 이름을 전달하여 파일을 폴더에 저장하는 방법은 무엇입니까?

  16. 16

    base64 문자열의 이미지를 flutter로 파일에 저장하는 방법은 무엇입니까?

  17. 17

    배열에 각 이미지 이름을 입력하는 대신 폴더에서 동적으로 이미지를로드하는 방법은 무엇입니까?

  18. 18

    단일 Numpy ndarray로 폴더에있는 여러 PPM 파일을로드하는 방법은 무엇입니까?

  19. 19

    laravel5.4의 저장 폴더에 저장된 이미지를 검색하는 방법은 무엇입니까?

  20. 20

    배열에 대한 참조를 저장하지 않고 일부 배열 값으로 객체를 만드는 방법은 무엇입니까?

  21. 21

    null 일 때 모델에서 바이트 배열 이미지를 표시하는 방법은 무엇입니까?

  22. 22

    null 일 때 모델에서 바이트 배열 이미지를 표시하는 방법은 무엇입니까?

  23. 23

    30 차원 numpy 배열을 사람이 읽을 수있는 txt 파일에 파이썬으로 저장하는 방법은 무엇입니까?

  24. 24

    Python 배열 또는 numpy 배열에서 nan 또는 invalid를 필터링하는 더 간단한 방법은 무엇입니까?

  25. 25

    입력 파일의 단어를 배열에 넣는 방법은 무엇입니까?

  26. 26

    파일을 읽고 객체 배열에 넣는 방법은 무엇입니까?

  27. 27

    엑셀 파일을 읽고 배열에 넣는 방법은 무엇입니까?

  28. 28

    1d json 배열에 열을 추가하고 파일에 저장하는 방법은 무엇입니까?

  29. 29

    배열로 파일 세트를 저장하는 더 좋은 방법은 무엇입니까?

뜨겁다태그

보관