机缘
最初成为创作者的初心
每一位创作者都有一个起点,对于我来说,成为创作者的初心源于以下几点:
-
实战项目中的经验分享 :在项目中积累了许多宝贵的经验,希望通过分享来帮助其他同行。在一个实际项目中,我们需要实现一个高效的目标检测系统,以便在实时视频流中检测和分类不同的物体。经过调研和实验,我们选择了YOLOv5算法,它在速度和准确性之间达到了良好的平衡,非常适合我们的需求。【也是在这个项目中,我发现YOLOv5的检测效果一点都不比YOLOv8查,我们是在完全相同的实验条件下,只有算法不一样的情况下得到的结果,希望大家在学习的过程中也不要被一些新的东西禁锢了思维,不是新的就是最好的】
-
日常学习过程中的记录:学习是一个持续的过程,记录下来的笔记不仅是对自己知识的整理,也能给其他人提供参考。
-
通过文章进行技术交流:写作是一种很好的方式来进行技术交流,能够碰撞出更多的灵感火花。
收获
在创作的过程中,我收获了许多:
从刚开始的几百个粉丝,到目前的4k+粉丝,感谢你们的一路陪伴与支持。
2400粉丝的时候,访问量达到了10w+ ,此后我被官方认证为人工智能领域的新星创作者。我也有有了更大动力去更新创作。
在写这篇文章的时候,粉丝数量已经突破4k。写作的一路非常的坎坷,但是因为有你们关注点赞与收藏,是我每次更新的最大动力。
-
粉丝关注:目前已经有四千名粉丝关注我的文章,这是一种巨大的动力。
-
正向反馈:文章发布后,收到了大量的赞、评论和阅读量,这让我感受到自己的努力得到了认可。
-
结识同行:通过创作认识了很多志同道合的同行,大家相互交流,共同进步。
日常
当前创作已经融入了我的日常生活,与我的工作和学习紧密相连:
-
生活的一部分:创作已经成为我生活的一部分,每天都会抽出时间来写作。
-
平衡创作和工作学习:尽量安排好时间,利用碎片时间进行写作,同时也确保工作和学习不受影响。
成就
因为日积月累的磨练,各方面的能力均有所提升,在过去的创作中,有一段代码让我非常自豪:
这段代码是我自己纯手写的,尽管是很简单的NMS,但我也很自豪,因为这是我写的第一段完整的代码
import numpy as np
def nms(boxes, score, conf_thres, iou_thres, offset = 4096):
# TODO
tf = score[:] > conf_thres
score = score[tf]
idx = np.argsort(score)[::-1]
keep = []
while len(idx) > 0:
keep.append(idx[0])
overlap = np.zeros_like(idx[1:], dtype=np.float32)
for i, j in enumerate(idx[1:]):
bbox1 = boxes[idx[0]]
bbox2 = boxes[j]
out = iou(bbox1,bbox2)
overlap[i] = out
idx = idx[1:][overlap < iou_thres]
box = []
for i in keep:
box.append(boxes[i]) # list.append()方法是在原地修改列表
return box
def iou(bbox1,bbox2):
x1, y1, w1, h1 = bbox1 # left up right bottom
x2, y2, w2, h2 = bbox2
if (x1 <= ((x2+ w2)/2) <= w1) or ((y1 <= ((y2+ h2)/2) <= h1)): # 必须加上等号
left_top_x = max(x1, x2)
left_top_y = max(y1, y2)
right_bottom_x = min(w1, w2)
right_bottom_y = min(h1, h2)
I = (right_bottom_x - left_top_x) * (right_bottom_y - left_top_y)
o = (w1 - x1) * (h1- y1) + (w2 - x2) * (h2 - y2) - I
IoU = I / o
return IoU
else: # 不相交
return 0
if __name__ == '__main__':
boxes = [
[100, 100, 200, 200],
[120, 110, 220, 210],
[300, 320, 400, 400],
[180, 100, 300, 180]
]
scores = np.array([0.9, 0.8, 0.7, 0.6])
classes = [0,1,1,2]
# np.concatenate 先转置 可以拼接
out = nms(boxes, scores, 0.5, 0.25)
print(out)
此外我也写了很多关于深度学习面试问题总结的文章,有上深度学习相关的百种问答技巧,也欢迎大家查看。
百面算法工程师 | 零碎知识点 【待更新】
百面算法工程师 | 正则优化函数------BN、LN、Dropout
百面算法工程师 | 集成学习------Boosting&Bagging
此外我也更新了YOLOv5和YOLOv8涨点相关的一些技巧,大家有兴趣的话可以查看
专栏地址:YOLOv5入门 + 改进涨点【点击即可跳转】
专栏地址:YOLOv8改进有效涨点【点击即可跳转】
憧憬
未来,我对职业规划和创作规划有如下憧憬:
-
职业规划:希望能够在技术领域继续深耕,成为一名资深的技术专家。
-
创作规划:计划继续写作,覆盖更多的技术话题,帮助更多的人,同时提升自己的写作水平。
发布这篇文章在里程碑专区,不仅是对过去的一种总结,也是对未来的一种激励。希望通过我的分享,能够激励更多的创作者坚持下去。
成为创作者的这段旅程,充满了意想不到的收获和感动。从最初的几篇文章,到现在的上千粉丝,每一次点击、每一个赞、每一条评论,都如涓涓细流,汇成了我前行的动力。在这过程中,我不仅收获了知识和技能,更收获了友情和支持。
记得第一次收到读者的正面反馈时,那种激动与满足至今难忘;每当看到自己的文章帮助了他人,内心总有一种说不出的喜悦。通过创作,我结识了许多志同道合的朋友,我们相互扶持,共同成长。这份情谊,是我在创作之路上最大的财富。
在忙碌的生活中,我努力平衡工作、学习和创作。有时也会感到疲惫,但每当想起那些关注我的读者,想起那些因为我的文章而解决了问题的人,我便重新充满了力量。创作,已经不仅仅是一种爱好,它是我生活的一部分,是我表达自己、帮助他人、实现自我价值的重要途径。
展望未来,我满怀希望。希望能继续在技术的道路上不断探索,不断创新;希望通过更多的作品,触及更多人的心灵,点燃更多人的梦想。每一步的努力,都是为了更美好的明天,每一次的创作,都是为了更加光辉的未来。
感谢所有支持我的人,感谢每一个阅读过我文章的人,因为有你们,我的创作之路不再孤单;因为有你们,我相信,一切都会越来越好。让我们一起,继续这段充满希望和感动的旅程。