列表显示这个怎么办array([1., 0.], dtype=float32)
时间: 2024-02-17 12:04:36 浏览: 144
如果你想要以更可读的方式显示这个列表的内容,可以使用以下代码:
```python
my_array = array([1., 0.], dtype=float32)
print(list(my_array))
```
这将会输出`[1.0, 0.0]`,其中每个数字都是以浮点数的形式显示。如果你想要输出整数形式的列表,可以使用以下代码:
```python
my_array = array([1., 0.], dtype=float32)
print([int(x) for x in my_array])
```
这将会输出`[1, 0]`。
相关问题
#测试的方法进行操作,得到最终的预测数字。 import numpy as np import matplotlib.pyplot as plt from PIL import Image import cv2 @tf.autograph.experimental.do_not_convert def predict(image_path): img= Image.open(image_path).convert("L") img=np.array(np.array(img)/255).reshape((1,28,28, 1)) img=tf.cast(img,dtype=tf.float64) #print(img) checkpoint.restore(manager.latest_checkpoint) logits=cnnmodel.predict(img) prob = tf.nn.softmax(logits, axis=1) pred = tf.argmax(prob, axis=1) pred = tf.cast(pred, dtype=tf.int32) print("经过识别大概率认为这个数字是",int(pred[0])) print(prob)#查看0-9每个数字的概率预 predict(r"D:\QQDownload\手写数字识别\5.png") img=cv2.imread(r"D:\QQDownload\手写数字识别\5.png") plt.imshow() plt.show(img)
在这段代码中,首先导入了必要的模块,包括 numpy、matplotlib、PIL 和 cv2 等模块。然后定义了一个 `predict` 函数,该函数接受一个图像路径作为输入,并使用 PIL 库将图像转换为灰度图像。接着将图像转换为 numpy 数组并进行归一化处理,然后将其转换为 Tensor 类型的数据。然后使用 TensorFlow 的 `tf.autograph.experimental.do_not_convert` 装饰器来避免自动转换 Python 控制流代码。接着从最新的检查点中恢复模型,并对输入图像进行预测。使用 TensorFlow 的 `tf.nn.softmax` 函数来计算每个数字的概率预测结果,并使用 `tf.argmax` 函数获取最终预测结果。最后将预测结果转换为整数类型,并输出预测结果和每个数字的概率预测结果。
在函数的最后,使用 OpenCV 的 `cv2.imread` 函数读取图像,并使用 matplotlib 的 `plt.imshow` 和 `plt.show` 函数来显示图像。但是在 `plt.imshow` 函数中,需要传入图像数组 `img` 作为参数,因此需要将 `cv2.imread` 返回的图像数组作为 `plt.imshow` 函数的参数传入。否则会出现参数错误或者无法显示图像的情况。
这段代码的第38行运行不了 import cv2 import numpy as np # 读取左右两张图像 img_left = cv2.imread('share4/img_put/7/7.3/left_0.jpg', 0) img_right = cv2.imread('share4/img_put/7/7.3/right_0.jpg', 0) # 读取左右两张图像 img1 = cv2.imread('left.png', 0) img2 = cv2.imread('right.png', 0) img1 = cv2.UMat(img1) img2 = cv2.UMat(img2) # 初始化ORB特征点提取器和SGBM算法 orb = cv2.ORB_create() sgbm = cv2.StereoSGBM_create(minDisparity=0, numDisparities=128, blockSize=11) # 提取左右两幅图像的特征点 kp_left, desc_left = orb.detectAndCompute(img_left, None) kp_right, desc_right = orb.detectAndCompute(img_right, None) # 特征点匹配 bf = cv2.BFMatcher(cv2.NORM_HAMMING, crossCheck=True) matches = bf.match(desc_left, desc_right) # 根据特征点得到匹配窗口并进行立体匹配 disparities = np.zeros_like(img_left) for match in matches: pt_left = np.array(kp_left[match.queryIdx].pt, dtype=np.int) pt_right = np.array(kp_right[match.trainIdx].pt, dtype=np.int) win_size = 11 left_win = cv2.getRectSubPix(img_left, (win_size, win_size), tuple(pt_left)) right_win = cv2.getRectSubPix(img_right, (win_size, win_size), tuple(pt_right)) disparity = sgbm.compute(left_win, right_win).astype(np.float32) / 16.0 disparities[pt_left[1], pt_left[0]] = disparity # 显示视差图 cv2.imshow('disparities', disparities) cv2.waitKey()
这个问题可能是因为缺少了cv2或numpy模块。你需要在你的计算机上安装这些模块才能运行该程序。你可以通过在终端上使用pip命令来安装这些模块。例如,你可以输入"pip install opencv-python"来安装cv2模块,输入"pip install numpy"来安装numpy模块。
阅读全文