我正在使用python
function toggleDarkModeRadio() {
if ($('#dark-mode-on').prop('checked', true)) {
$('#dark-mode-off').prop('checked', true);
};
if ($('#dark-mode-off').prop('checked', true)) {
$('#dark-mode-on').prop('checked', true);
};
}
_, threshold = cv2.threshold(gray_roi, 3, 255, cv2.THRESH_BINARY_INV)
_, contours, _ = cv2.findContours(threshold, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
contours = sorted(contours, key=lambda x: cv2.contourArea(x), reverse=True)
如何解决?
答案 0 :(得分:1)
根据cv2.findContours
documentation,该函数仅返回2个值。您尝试打开3的包装。
从第二行中删除第一个_
(不需要的值)以匹配文档中的签名。
_, threshold = cv2.threshold(gray_roi, 3, 255, cv2.THRESH_BINARY_INV)
contours, _ = cv2.findContours(threshold, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
contours = sorted(contours, key=lambda x: cv2.contourArea(x), reverse=True)
通常来说,当您收到以下Python错误消息时:
ValueError:没有足够的值可解包(预期 x 得到 y )
搜索尝试解压缩y
元素的位置,然后尝试通过解压缩x
元素来解决此问题。
答案 1 :(得分:1)
请参考OpenCV参考:
findCounters返回(轮廓,层次结构),因此第二行应为:
contours, hierarchy = cv2.findContours(threshold, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)