Added more api to display function
This commit is contained in:
61
tests/test_simple_api.py
Normal file
61
tests/test_simple_api.py
Normal file
@ -0,0 +1,61 @@
|
||||
import unittest as ut
|
||||
|
||||
class TestSubWin(ut.TestCase):
|
||||
|
||||
def test_display_numpy(self):
|
||||
from cvpubsubs import display
|
||||
import numpy as np
|
||||
|
||||
display(np.random.normal(0.5, .1, (500,500,3)))
|
||||
|
||||
def test_display_numpy_callback(self):
|
||||
from cvpubsubs import display
|
||||
import numpy as np
|
||||
|
||||
arr = np.random.normal(0.5, .1, (500, 500, 3))
|
||||
|
||||
def fix_arr_cv(arr_in):
|
||||
arr_in[:] += np.random.normal(0.01, .005, (500, 500, 3))
|
||||
arr_in%=1.0
|
||||
|
||||
display(arr, callbacks= fix_arr_cv, blocking=True)
|
||||
|
||||
def test_display_numpy_loop(self):
|
||||
from cvpubsubs import display
|
||||
import numpy as np
|
||||
|
||||
arr = np.random.normal(0.5, .1, (500, 500, 3))
|
||||
|
||||
displayer, ids = display(arr, blocking = False)
|
||||
|
||||
while True:
|
||||
arr[:] += np.random.normal(0.01, .005, (500, 500, 3))
|
||||
arr %= 1.0
|
||||
displayer.update(arr, ids[0])
|
||||
displayer.end()
|
||||
|
||||
def test_display_tensorflow(self):
|
||||
from cvpubsubs import display
|
||||
import numpy as np
|
||||
from tensorflow.keras import layers, models
|
||||
import tensorflow as tf
|
||||
|
||||
for gpu in tf.config.experimental.list_physical_devices("GPU"):
|
||||
tf.compat.v2.config.experimental.set_memory_growth(gpu, True)
|
||||
#tf.keras.backend.set_floatx("float16")
|
||||
|
||||
displayer, ids = display(0, blocking = False)
|
||||
displayer.wait_for_init()
|
||||
autoencoder = models.Sequential()
|
||||
autoencoder.add(
|
||||
layers.Conv2D(20, (3, 3), activation="sigmoid", input_shape=displayer.frames[0].shape)
|
||||
)
|
||||
autoencoder.add(layers.Conv2DTranspose(3, (3, 3), activation="sigmoid"))
|
||||
|
||||
autoencoder.compile(loss="mse", optimizer="adam")
|
||||
|
||||
while True:
|
||||
grab = tf.convert_to_tensor(displayer.frame_dict['0frame'][np.newaxis, ...].astype(np.float32)/255.0)
|
||||
autoencoder.fit(grab, grab, steps_per_epoch=1, epochs=1)
|
||||
output_image = autoencoder.predict(grab, steps=1)
|
||||
displayer.update((output_image[0]*255.0).astype(np.uint8), "uid for autoencoder output")
|
Reference in New Issue
Block a user