使用Superpixels 的參數出現錯誤
在HW Part2的部分,為什麼只要有這行就會出錯??? 沒有他反而能跑呢???
# convert images into their superpixel representation
sometimes(iaa.Superpixels(p_replace=(0, 1.0), n_segments=(20, 200))),
錯誤訊息如下:
ValueError Traceback (most recent call last)
<ipython-input-14-985d6a3d1dc3> in <module>
45
46
---> 47 images_aug = seq.augment_images(img_combine) ## Image Augmentation
48
49 ##畫出來
~\Anaconda3\envs\tensorflow\lib\site-packages\imgaug\augmenters\meta.py in augment_images(self, images, parents, hooks)
693 random_state=self.random_state,
694 parents=parents,
--> 695 hooks=hooks
696 )
697 # move "forward" the random state, so that the next call to
~\Anaconda3\envs\tensorflow\lib\site-packages\imgaug\augmenters\meta.py in _augment_images(self, images, random_state, parents, hooks)
2959 def _augment_images(self, images, random_state, parents, hooks):
2960 return self._augment_augmentables(
-> 2961 images, random_state, parents, hooks, "augment_images")
2962
2963 def _augment_heatmaps(self, heatmaps, random_state, parents, hooks):
~\Anaconda3\envs\tensorflow\lib\site-packages\imgaug\augmenters\meta.py in _augment_augmentables(self, augmentables, random_state, parents, hooks, augfunc_name)
2993 augmentables,
2994 parents=parents + [self],
-> 2995 hooks=hooks
2996 )
2997 return augmentables
~\Anaconda3\envs\tensorflow\lib\site-packages\imgaug\augmenters\meta.py in augment_images(self, images, parents, hooks)
631 random_state=self.random_state,
632 parents=parents,
--> 633 hooks=hooks
634 )
635 # move "forward" the random state, so that the next call to
~\Anaconda3\envs\tensorflow\lib\site-packages\imgaug\augmenters\meta.py in _augment_images(self, images, random_state, parents, hooks)
3569
3570 result = self._augment_augmentables(images, random_state,
-> 3571 parents, hooks, _augfunc)
3572
3573 # If input was a list, keep the output as a list too,
~\Anaconda3\envs\tensorflow\lib\site-packages\imgaug\augmenters\meta.py in _augment_augmentables(self, augmentables, random_state, parents, hooks, func)
3643 result_list = func(
3644 augmenters,
-> 3645 augmentables_this_list, parents + [self], hooks
3646 )
3647
~\Anaconda3\envs\tensorflow\lib\site-packages\imgaug\augmenters\meta.py in _augfunc(augs_, augmentables_, parents_, hooks_)
3566
3567 def _augfunc(augs_, augmentables_, parents_, hooks_):
-> 3568 return augs_.augment_images(augmentables_, parents_, hooks_)
3569
3570 result = self._augment_augmentables(images, random_state,
~\Anaconda3\envs\tensorflow\lib\site-packages\imgaug\augmenters\meta.py in augment_images(self, images, parents, hooks)
631 random_state=self.random_state,
632 parents=parents,
--> 633 hooks=hooks
634 )
635 # move "forward" the random state, so that the next call to
~\Anaconda3\envs\tensorflow\lib\site-packages\imgaug\augmenters\meta.py in _augment_images(self, images, random_state, parents, hooks)
2959 def _augment_images(self, images, random_state, parents, hooks):
2960 return self._augment_augmentables(
-> 2961 images, random_state, parents, hooks, "augment_images")
2962
2963 def _augment_heatmaps(self, heatmaps, random_state, parents, hooks):
~\Anaconda3\envs\tensorflow\lib\site-packages\imgaug\augmenters\meta.py in _augment_augmentables(self, augmentables, random_state, parents, hooks, augfunc_name)
2993 augmentables,
2994 parents=parents + [self],
-> 2995 hooks=hooks
2996 )
2997 return augmentables
~\Anaconda3\envs\tensorflow\lib\site-packages\imgaug\augmenters\meta.py in augment_images(self, images, parents, hooks)
631 random_state=self.random_state,
632 parents=parents,
--> 633 hooks=hooks
634 )
635 # move "forward" the random state, so that the next call to
~\Anaconda3\envs\tensorflow\lib\site-packages\imgaug\augmenters\segmentation.py in _augment_images(self, images, random_state, parents, hooks)
232 "float16", "float32", "float64",
233 "float96", "float128", "float256"],
--> 234 augmenter=self)
235
236 nb_images = len(images)
~\Anaconda3\envs\tensorflow\lib\site-packages\imgaug\dtypes.py in gate_dtypes(dtypes, allowed, disallowed, augmenter)
326 augmenter.name,
327 augmenter.__class__.__name__,
--> 328 ", ".join(disallowed)
329 ))
330 else:
ValueError: Got dtype 'float32' in augmenter 'UnnamedSuperpixels' (class 'Superpixels'), which is a forbidden dtype (uint128, uint256, int128, int256, float16, float32, float64, float96, float128, float256).
回答列表
-
2019/12/17 下午 11:53楊哲寧贊同數:1不贊同數:0留言數:1
您好,可能是版本不同,關於Superpixels的支援的type有了變動,從報錯訊息來看,並不支援float32,因此我們可以將輸入影像的type變動,如下:
img_combine=np.array([img,img,img,img],dtype=np.uint8)