Checkmarx与Sonarqube的比较

Checkmarx是一款SAST,主要扫描安全问题和最佳实践的问题;SonarQube主要是扫描代码质量和最贱实践问题,最近也添加了一些安全规则的扫描的支持。下面是比较两款工具的主要参数的不同点,仅供参考。

类型参数CheckmarxSonarqube
基本功能支持语言

JavaScript,Java,PHP,Python,

Swift,Go,Apex,Scala,.Net,C,C++,

Android,Ruby,Perl,Groovy,PL/SQL,
Asp.Net,VB.net,HTML5,Windows Mobile

JavaScript, Java, PHP, Python, C,C++,C#,JS/TS,Kotlin,Flex,
HTML5,ObjetiveC,Ruby,Scala,Swift,T-SQL,VB6,XML
是否需要可构建的代码NOYes
是否支持扫描二进制文件NONO
是否支持自定义规则YesYes
支持的框架结构(只列出常见的Java和JS的主要常用框架)Struts,JPA,Spring MVC/Boot,iBatis,Hibernate
,Jquery,Node.js,Ajax,Angular.js,Express.js,Handlebars,
ReactJS,Vue.js
Struts, Spring,Hibernate,Thymeleaf
ReactJS,Vue.js,Flow
是否可以修改漏洞的修改方案和漏洞描述Yes对于Java语言不支持,只针对C#和JS提供有限的支持,
可以添加扩展描述
在UI中显示源代码和调用栈互动YesNO,只显示漏洞触发点的代码。
支持的安全漏洞类型对于Java,JS和C#,每种语言都大于200种Java(35),JS(28),C#(13)
是否支持增量扫描支持对于C++支持,对于java不支持。
工具主要焦点主要集中代码安全和最佳实践主要集中在代码质量和最佳实践,也支持一些安全类型
报告格式PDF,Excel,XML,CSVHTML,PDF(需要安装插件)
集成是否提供IDE插件YesYes
支持CI/CD集成Jenkins,Bamboo, TeamCity,Azure Pipelines,
AWS CodeBuild, AWS Code Pipeline, Sonarqube,CLI
Jenkins,Github Action, Gilab CI, Azure Pipelines,
Bitbucket,Pipelines
与其他工具集成能力提供SDK,API和CLI与其他工具集成Jira,Confuluence,Butler。大部分的SAST都会提供插件与之集成。
其他客户支持提供各种支持,包括专家一对一支持和技术支持。
有些支持需要支付费用才能提供。
在大陆没有官方支持
文档完整的文档和手册以及培训资料文档通常落后,导致一些人通过使用来编写书籍来指导,
不过通常也跟不上版本发布的节奏。
价格社区版本免费,不过,有些功能必须要企业版才提供。
Forrester wave
for
SAST Q1 2021
Accuracy2.402.00
Remidiation Guidance &
education
5.001.00
Breadth of Coverage4.201.80
Rule Management4.002.80
SDLC ingtegration3.402.65
效率(只针对安全规则)误报率高(可以通过改进规则降低)高(不能改规则)
扫描速度慢(需要编译,比较耗时)
准确度高(Java高40-50%, JS高25-35%)

*所有的分数都是基于0(弱)->5(强)。

 如果是关注安全编码,Checkmarx还是更胜一筹,SonarQube对于代码质量的扫描效果更好,如果想两者兼而顾之,很多企业一般都是结合两种工具一起用于提高代码的质量和安全。Checkmarx也提供了plugin(Plugins | Checkmarx.com)供和SonarQube集成。

### YOLOv5 COCO 预训练权重下载 YOLOv5 提供了在 COCO 数据集上预训练好的权重,这些权重可以直接用于推理或者作为迁移学习的基础来微调自定义数据集。可以通过以下方式获取预训练权重: #### 官方仓库中的预训练权重 官方 Ultralytics 的 GitHub 仓库提供了多个版本的 YOLOv5 模型及其对应的 COCO 预训练权重。用户可以访问该链接并找到适合需求的具体模型(如 yolov5s、yolov5m 等)。例如,在运行测试脚本时可指定路径加载预训练权重[^1]。 ```bash python test.py --weights_path weights/yolov3.weights ``` 上述命令展示了如何通过 `--weights_path` 参数加载特定权重文件。对于 YOLOv5 来说,类似的参数名称通常是 `--weights` 而不是 `--weights_path`。因此实际操作如下所示: ```bash wget https://github.com/ultralytics/yolov5/releases/download/v6.2/yolov5s.pt ``` 此 URL 是针对最新发布版本 v6.2 中的小规模模型 (yolov5s) 所提供的 COCO 预训练权重。如果需要其他变体(比如更大或更小尺寸),只需替换 URL 中的 `yolov5s` 即可,例如 `yolov5l`, `yolov5x` 等[^4]。 #### Anchor Box 设置 值得注意的是,默认情况下,YoloV5 使用的 anchor box 尺寸已经经过优化调整以适应 COCO 数据集中目标分布特性[^2]。具体数值可以在项目源码目录下的配置文件里查看到,像这样: ```yaml # models/yolov5s.yaml anchors: - [10,13, 16,30, 33,23] - [30,61, 62,45, 59,119] - [116,90, 156,198, 373,326] ``` 以上片段摘录自 `yolov5s.yaml` 文件的一部分内容说明锚框设定情况[^3]。 #### 总结 综上所述,要下载适用于 COCO 数据集的 YOLOv5 预训练权重,推荐直接从官方发布的资源页面选取对应版本进行下载;同时注意不同大小网络结构间可能存在差异化的超参调节策略,尤其是 anchors 设定方面需参照相应文档指导完成设置工作。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值