经过测试,没有比numpy快。
# !/usr/bin/env python
# -*- coding: utf-8 -*-
import ctypes
import multiprocessing
import random
import time
import os
from multiprocessing import sharedctypes
import numpy as np
import cv2
def make_array(shape=(1,), dtype=np.uint8, shared=False, fill_val=None):
start = time.time()
np_type_to_ctype = {np.float32: ctypes.c_float,
np.float64: ctypes.c_double,
np.bool: ctypes.c_bool,
np.dtype('uint8'): ctypes.c_ubyte,
np.uint8: ctypes.c_ubyte,
np.uint64: ctypes.c_ulonglong}
if not shared:
np_arr = np.empty(shape, dtype=dtype)
el