- 博客(12)
- 收藏
- 关注
原创 巩固python基础——控制迷宫寻宝机器人 二
我们的机器人能够执行四个动作:向上走u、向下走d、向左走l、向右走r。但是,由于有障碍,很多时候机器人的行动并不能成功。所以在这里,你需要实现一个函数,来判断机器人在某个位置,执行某个移动动作是否可行。
2025-01-10 08:46:32
1249
原创 用 Zip 进行转置 原理解析
将矩阵的每一行作为单独的参数传递给zip函数,zip函数将每一行的元素打包成元组,最终得到每一列的元组集合。zip解包后的一行元组是基于解包前的同一列元素,从而实现了矩阵的转置,变为3×4矩阵。使用zip进行矩阵转置是一个很实用的技巧,但对于其理解不够深刻,遂展开研究。当使用zip(*data)进行解包时,data是一个4x3的矩阵。请看下图详细解析过程。
2025-01-07 10:13:06
209
原创 为什么不能用for循环加replace替换原列表
代码使用了for循环遍历列表中的每个元素,但是它没有直接修改原始列表。相反,它创建了一个新的字符串,其中包含了小写的用户名,并且用下划线替换了空格。打印names时,会看到原始的用户名列表没有变化。代码片段使用了索引循环,通过range(len(usernames))来遍历列表的索引,然后直接修改列表中每个元素的值。修改第一个代码,运行可以看出name只是每次从names列表中提取的一个元素,并且不能在循环中组合成一个新的列表,最后输出的name还是最后一次循环的从names列表提取的元素。
2025-01-06 14:27:55
383
原创 python+opencv实现传统方法车道线检测(canny算子边缘检测+基尔霍夫变换+多项式拟合)六
第一行读取视频,也可以读取摄像头。第二行代码读取帧可以通过写循环来读取帧。
2025-01-03 08:46:05
324
原创 python+opencv实现传统方法车道线检测(canny算子边缘检测+基尔霍夫变换+多项式拟合)五
tips:此处笔者相较于原方法,改为了红框所示的代码,原方式直接将lines通过np.ravel提取坐标,Pycharm会报错:Unexpected type(s),Pycharm的警告指出了一个潜在的问题:np.ravel()函数期望的输入类型与您提供的列表类型不匹配。虽然在某些情况下,NumPy可能会自动将列表转换为数组,但这并不是所有环境下都能成功,可能会在不同的Python版本或NumPy版本中导致错误。为了消除这个警告并确保代码的健壮性,修改代码为将输入数据显式地转换为NumPy数组。
2025-01-02 13:34:08
890
原创 python+opencv实现传统方法车道线检测(canny算子边缘检测+基尔霍夫变换+多项式拟合)四
通过前文操作,得到了车道线的一系列边缘像素点,并没有连成线霍夫变换可以通过像素点找到图中的直线。霍夫变换有3种,标准霍夫变换,多尺度霍夫变换和累计概率霍夫变换,前两种使用HoughLines函数,最后一种使用HoughLines函数实现。累计霍夫变换的执行效率更高,所以一般更多的倾向使用累计概率霍夫变换。霍夫变换将在迪卡尔坐标系下的线条转换到极坐标系下,迪卡尔坐标下通过一个点的所有直线的集合在极坐标系下是一条正弦曲线。正弦曲线的交点,表示这些曲线代表的点在同一条直线上。
2025-01-02 10:53:32
786
原创 python+opencv实现传统方法车道线检测(canny算子边缘检测+基尔霍夫变换+多项式拟合)三
从前文边缘检测的图片,通过边缘检测得到的图片包含了很多环境信息,这些是我们不感兴趣的,需要提取我们需要都得信息。观察原图可知,车道线一般位于图片下方的一个梯形区域,4个点,组成梯形区域的四个顶点(或设定3个点的三角形区域)。利用fillConvexPoly函数可以画出多边形,这个函数共有4个参数:空图(大小与原图一致),顶点信息,多边形的边数,线条颜色。将梯形掩模区域与原图进行bitwise_and 操作,可以只得到感兴趣区域内的边缘检测图,从途中可以看出只有车道线信息。bitwise。
2024-12-31 13:42:29
388
原创 python+opencv实现传统方法车道线检测(canny算子边缘检测+基尔霍夫变换+多项式拟合)二
位于 maxVal 和 minVal 阈值间的边缘为待分类边缘,或非边缘,基于连续性进行判断. 如果边缘像素连接着 "确定边缘(sure-edge)" 像素,则认为该边缘属于真正边缘的一部分;调用opencv的canny函数,minVal=100,maxVal=200,此处阈值可根据实际图片调整为最合适阈值,采用默认的3x3sobel算子计算。寻找边缘,即灰度强度变化最强的位置,(一道黑边一道白边中间就是边缘,它的灰度值变化是最大的)。该阶段主要是判断得到的边缘中,哪些是真正的边缘,哪些不是边缘.
2024-12-30 16:05:12
825
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1