如何测试光盘的质量?

http://stor-age.zdnet.com.cn/stor-age/2004/0719/399836.shtml

如何测试光盘的质量?

ZDNet 存储时代频道 更新时间:2004-07-19 作者:存储时代——赵效民 来源:

本文关键词:cd DVD


第01页:如何测试光盘的质量?第02页:如何测试光盘的质量?第03页:如何测试光盘的质量?第04页:如何测试光盘的质量?第05页:如何测试光盘的质量?第06页:如何测试光盘的质量?

光盘质量测试的意义

本文是《有多少错误可以忍耐?CD与DVD光盘质量深入探讨》专题的一部分

在本专题的《是什么在影响CD与DVD光盘的质量?》一文中已经讲述了笔者有关刻录质量测试的观点,那么“光盘刻录质量的测试意义何在?”这一问题也就摆在各位的面前。显然,我们不能为了测试而测试,更不能在范围有限的测试中盲目的评价产品的好与坏,因为不确定的因素太多了。

对于用户而言,测试的最大的目的在于了解当前所使用的刻录机与光盘组合的“结合质量”与最高可能的刻录速度(比如能经8X的速度稳定的刻录4X的盘片,岂不是更好?),当通过测试发现质量问题后,就要寻找相应的对策——是等Firmware还是更换盘片?

对于媒体而言,则是向读者展示不同的刻录机与不同的刻录盘之间的匹配程度,从而给读者一个选择的参考。并在可允许的错误率范围内,给出一个相对的高刻录质量的推荐。这里要强调一点,只要刻录的结果符合相关的质量标准,那么就可以认定该种组合(刻录机+光盘)的刻录质量是合格的,在此基础上更好的质量当然会更好,可在读者的心目中,会不会都对质量有如此苛刻的要求就很难说了。

而且,不要以为范围广阔的测试就肯定有说服力,因为在测试过程中,我们还不能忽视一个问题的存在。那就是测试时的读取平台。由于C1、C2、PI、PO纠错都是在光驱已经将光盘上信息读取恢复成数据之后才做的事情,也就是说光驱读盘是第一步,如果光盘上实际刻录的信息是正确的,但由于光驱的读盘能力较差,最终的生成的数据是错误的,那么对C1、C2、PI、PO错误的影响也就不言而喻了。

两种不同的驱动器对同一张光盘的CD-DVD Speed光盘质量测试结果(PI Error与Jitter都是越小越好,相关的说明见下文),从图中可见左边的要明显好于右边的(点击放大)

所以,以现有的普通大众的测试方法来看,从某种角度上说,光盘的刻录质量测试也是对测试平台读盘能力的一种测试。对于光驱的读盘能力,我相信大家应该深有体会,这绝对是一个“个性化”的因素。有时A驱读不了的光盘,在B驱就能非常顺畅的读取,这种情况我想各位应该是屡见不鲜了,此时你肯定不能贸然地评价光盘的刻录质量。

另外,测试时的速度也是有讲究的。理论上,光盘的错误标准基本上是按1X速度时所制定的,也就是说,光盘只要能在1X的速度下达到相关的质量标准就被认为是合格的(CD唱片和视频DVD在播放时都是1X的速度,高于1X的速度主要用于数据光盘)。事实上,由于倍速的提高对读取所带来的影响(可能会因为对焦的时间缩短而影响读取的准确性)是一直存在的,所以很多光驱在读取质量差的光盘时都会进行降速,不信你就观察测试过程中的传输倍速,有时是会变动的。而工业级测试设备则严格按照业界规格设计,始终要保证稳定的低速率读取(一般不会超过2X),数据读不出来就是读不出来了,另外在专业测试中往往还会借助专业的微观设备以检查光盘表面的实际情况,以还原光盘的本来面目。

同一光驱和DVD光盘在不同速度下的KProbe测试结果,右边的为1X测试,左边为8X测试,哪个质量更好(看Max值)?一目了然(点击放大)

在普通的测试中,选择最高倍速读取的主要是考虑到测试的时间,否则读一张DVD就需要40多分钟,谁受得了呢?但这种高倍速测试的结果更需要冷静对待,因为影响读取质量的因素更多了。

因此,普通大众用通用的光驱+专用的测试软件所做的测试只能作为参考,否则业界也就不需要那些成本上万、甚至上百万元的光盘测试与验证系统了。当然,这种工业测试也存在着相对性,但显然要比大众级测试严谨得多。

所以,我们绝不要盲目迷信那些使用普通驱动器所进行的光盘刻录质量测试,不过作为选购时的参考仍有价值,这一点是不可否认的。

下面我就介绍主流的几种测试软件和相关的测试方法(注:由于这些软件不仅可以测试光盘的刻录质量,还可以测试DVD-ROM的测试,所以本文的题目没有局限于刻录质量的测试)。

内容导航栏

用户评论

光盘质量测试——CD-DVD Speed

CD-DVD Speed是一个老牌的光驱测试软件,长久以来一直是Nero刻录软件工具包中的一员,另外也可以单独下载。从3.0版本开始增加了C1、C2、PI、PO与Jitter的测试。不过由于上述测试需要软件与硬件进行沟通,而当前光驱控制器的设计并没有标准化,因此并不是所有的光驱都可以使用CD-DVD Speed进行上述质量测试。目前CD-DVD Speed的最新版本是3.12,其相关测试项目所支持的光盘驱动器看下表:

CD-DVD Speed目前所支持的刻录机/驱动器一览表(点击放大)

CD-DVD Speed是目前可用驱动器最多的一款测试软件,由于很多国内品牌的刻录都是从中国台湾厂商OEM的,所以很多大陆品牌的产品也可以使用这一款软件。另外,需要指出的是,即使不在这个列表上的驱动器也可以进行C1、C2、PI、PO测试,但准确性就不能保证了。

CD-DVD Speed的界面图,光盘质量测试的选项在“其他”菜单中(点击放大)

在“其他”菜单中,有两个刻录质量选项,一个是ScanDisc,这是对光盘可读性的一检测,一个就是“光盘质量测试”(Disc Quality Test)。

ScanDisc的表面扫描,检查光盘的可读性,文件测试则显示光盘上文件的可读性,我们一般选择“表面测试”,如果出现红块就表明光盘上有驱动器不能纠正的坏数据区(若是CD就意味着CU错误,DVD就意味着POF错误)

ScanDisc只是一个粗略的测试,只能分辨出光盘有没有不可读出的错误,所以只要光盘的刻录质量满足相关的标准甚至超出相关的标准,在测试中也不会出现红块(如果出现CU或POF,那么红块就不可避免)。因此,如果想详细了解刻录质量,就要用到光盘质量测试。

光盘质量测试在不同支持光驱下可进行C1/C2、PI/PO或Jitter的测试(点击放大)

首先要在CD-DVD Speed开始界面中选择测试驱动器,然后再进行光盘质量测试。由于不同的测试项目需要相关的驱动器支持,所以只有很少部分的驱动器才支持全部的测试项目。上图是使用CD-DVD Speed所宣布完全支持的BenQ DW1600刻录机所生成的,从中可以看出,即使将速度调整为8X,测试时的速度也一直保持在1X至2X之间。笔者认为这是一个正确而严谨的做法,其给出的结果相对来说也是更正确的。

在结果图中,横坐标为容量,上图左侧的纵坐标是PI/C1测试值,右侧的纵坐标为转速(单位是1000rpm),下图的左侧纵坐标是PIF/C2测试值,右侧是Jitter测试值。

为什么越到最后,错误值会越来越大呢?这是由于光盘从内圈开始刻录/读取,所以容量越大时,就意味着越向外圈靠拢,此时光盘的晃动与几何形状缺陷的影响也就会越来越大。在在刻录时,如果光驱的精确控制能力不足(如转速、OPC),那么外圈出现质量问题的机率就远远大于内圈,在读取时也是一样。

测试结束后,会出现一个报告窗介绍详细的测试结果

虽然没有相关的帮助文档介绍,但笔者认为Disc Quality Test的测试单位与相关的业界标准相符。即以8个ECCB为一个PI测试单位,从结果中可以看出,最高达529个PI错误已经超出了标准中的每8个ECCB的PI错误不能超过280个的标准,但测试中没有出现PIF和POF,则表明最终的解码没有任何问题,PIF的测量单位应该是1个ECCB,最高允许的标准是4个。如果是CD光盘,那么测试的单位就是秒,C1错误的标准上限220,C2则当然是越低越好了(CD光盘标准中对C2错误没有明确的规定)。

最后一个参数就是Jitter,从图中可以看出,这张光盘的Jitter从一开始(内圈)就不合格,达到了12%(DVD+R的标准是9%),结束(外圈)时达到了15.1%。与此同时我们也能发现,PI错误的数量随着Jitter的增加而增加。从这里大家就能更了解Jitter与光盘质量之间的关系了。但是,在另一方面,Jitter的提高并没有影响PIF的数量,这应该与测试速度较低有很大的关系。

另外,除了专用的光盘质量测试外,传统的传输率测试也可以体现出光盘的质量。如果测试的曲线是稳步上升的,就证明质量良好,如果曲线是七扭八拐的,那么就说明质量有一定的问题,光驱必须通过降速来读取,而如果读不过去的话,CD-DVD Speed则就会报错而终止测试。

光盘质量不佳的传输曲线图(点击放大),但仍能完成测试,说明光盘还能在此光驱上被完整的读取(ScanDisc测试也不会出现红块)

不过,我们别忘了,上面这些测试结果只是BenQ DW1600刻录机给出的,并不能代表光盘在其他光驱上的质量表现。

光盘质量测试——KPorbe

KProbe是一个相当著名的测试软件,以前叫K's CD/DVD Probe。与之一块出名的就是建兴(LiTEON)的光驱。因为KProbe就是为建兴光驱而设计的,原则上只支持建兴的产品(包括OEM)为测试平台,但如果某公司的产品在设计上与建兴的产品相接近(如相同的伺服设计与控制器),也可以通过KProbe进行部分的测试,不过测试结果可能并不完全正确。

KProbe的介面图,目前最新版本是2.2.3(点击放大)

与CD-DVD Speed相比,KProbe的测试项目中没有Jitter,但有了ATER/ADER的测试,这个测试是针对空白的CD或DVD+R刻录盘的。注意,要把“Write”选项关闭,否则测试后的盘片不能使用(它是通过真实的刻录来检测)。测试前要选择准备要用的刻录速度,这个测试的结果可以理解为CD或DVD+R刻录盘沟槽制作质量,质量越好,可用的刻录速度就可以越高。

选择40X时的某CD-R的ATER测试结果,ATER测试显示错误率较高,不太适合在这此速度下刻录(点击放大)

事实上,我们使用KProbe的项目主要就是第一项“BLER”,即块错误率。至于最后面的“Performance”则与CD-DVD Speed的速度测试差不多,但可测试的项目较少,如果有CD-DVD Speed就可以不用它了。

值得注意的是,KProbe的作者似乎长期以来对PI与PO的标准并没有一个清晰的概念。在早前的版本中,我们看到的是PI与PO测试图,而不是现在的PI/PIF测试图。

K's CD/DVD Probe 1.1.29的界面图,仍以PI、PO错误分析DVD刻录质量(点击放大)

当我们了解了本专题前面介绍的相关标准后,大家就能明白,显然现在新版本在参数上更为正确。在测试介面的右侧,我们可以调整相关的测试选项。其中你能发现PI与PIF(新版本的界中这里仍然是PO,可惜)的测试单位,前者为8个ECCB,后者是1个ECCB,这个我们就不用改了。其他的参数需要调整的就是速度,从1X到Max(看测试光驱的能力)。

在很多DVD光盘测试中,都是选择8X或Max(现在的光驱对于DVD刻录盘来说就是Max=8X),这是因为测试用时最短,但在前文的分析中,大家已经能明白这种做法是不太严谨的。当然,由于所有的光盘都是在同样的配置下进行测试,所以也具备一定的可比性,但对于某一光盘的具体质量的评价可能就不是很客观了。这需要测试人员灵活掌握,并且事先做好充分的说明与解释,以免误导读者。

KProbe的测试结果图(点击放大)

当测试完成后,点击绿色箭头“开始测试”按钮旁边的“软盘”形状的按钮即可将测试结果存成PNG格式的图片。从中我们能看到简要的测试结果。我们要关注的是PI与PIF的最大值,前者最好不要超过280,后者最好不要超过4。在某些厂商的内部规定中,则可能会有更为严格的要求,如对刻录质量要求非常高的Plextor就认为,PI错误不能超过20。

某些光驱可能可以使用KProbe测试,但测试结果也许会不太正常(点击放大)

对于那些没有建兴光驱的用户来说,某些光驱也可以使用KProbe进行测试,比如BTC的1008刻录机(台电的DWB8D就是OEM自这一型号)。但是,在笔者的试用发现对于某些质量较差的盘片,它给出的数值很异常。比如PI与PIF(图中显示是PO)错误值达到6000多,但我们可以计算一下。一个DVD的ECCB有208个PI行,一行出错(不超过5个字节)算做一个PI错误,那么8个ECCB也就是1664个PI行,不可能出现6000多个PI错误的时候,同理PIF的数量也只能在0-208之间(同样是这张光盘,在建兴光驱上的测试结果,PIF最高为200)。所以,使用非建兴光驱进行测试时,一定要多加小心(本例中唯一可以肯定的是,光盘的刻录质量是存在问题的)。

另外值得一提的是KProbe的光盘信息工具也是非常好用的,在Info菜单下点击Disc就可以看到光盘的详细情况,包括生产商和速度信息。如果是双层DVD光盘,还会报告双层的类别,即使不是建兴的光驱,也可以使用这一功能。

KProbe所报告的光盘信息非常明确

与CD-DVD Speed测试一样,KProbe测试的结果仅表示该光盘在所使用的光驱上所体现出的质量水平,不要将其绝对化,切记!


光盘质量测试——PlexTools Professional

PlexTools Professional(PTP)是日本著名刻录机厂商Plextor(科浦特)的专用工具软件,只能与Plextor的产品配套使用,而它的测试功能只能是Plextor的某些产品才能支持。由于Plextor刻录机的高质高价,使其在用户中的普及率很少,因此采用它的质量测试大多出现在媒体的测试报告中。当然,如果你正好是PlexWriter Premium(CD-RW刻录机)或PX-712A(DVD-Dual刻录机)的用户,就可以好好玩玩这个软件了。

其实,测试功能只是PTP的一个组成部分,PTP的强大更体现于刻录光盘的实力上,不过这与本文无关,我们暂且不提。由于笔者手上没有Plextor的相关产品,所以相关的介绍以PTP的帮助文件整理而成。

PTP目前的最新版本是2.15,其主要的测试项目包括4大部分:

  • Q-Check C1/C2测试:(仅支持PlexWriter Premium和PX-712A)

  • Q-Check FE/TE测试: (仅支持PlexWriter Premium和PX-712A)

  • Q-Check Beta/Jitter测试:(仅支持PlexWriter Premium和PX-712A)

  • Q-Check PI/PO 测试: (仅支持PX-712A)

C1/C2和PI/PO测试,大家已经比较了解了,PTP在测试中,比较有新意的是增加了CU与POF的测试(PIF测试据说是一个隐藏功能,在说明书中没有提及),下面我们着重看看相对来说更为陌生的FE/TE测试与Beta/Jitter测试。

FE/TE测试

PTP的FE/TE测试图

FE的全称是Focus Errors,即聚焦错误,是指激光无法正确聚集于一点的错误。TE代表Tracking Errors,即寻轨错误,是指刻录机不能正确跟踪轨道的错误。这个测试是用来寻找最佳的刻录速度的,因为如果盘片质量不好(如沟槽制作不精确,介质层与盘片不平整),速度越高,那么出现FE与TE的可能性就越大,反之越小。

当测试的两条曲线比较平稳,而且数值较低时(30以下),就表示当前刻录盘可以在当前的测试速度下刻录,如果曲线很不平稳且数值较大,那么就意味着在此速度下刻录,出现质量问题的可能性很大。这有点像KProbe的ATER与ADER测试(ATIP与ADIP错误与寻轨错误有着直接的关系),但更为精细。

Beta/Jitter测试

PTP的Beta/Jitter测试图(点击放大)

Beta/Jitter的原理和相关的标准就不在这里重复了,图中红色的线代表Beta值,越接近0越好,Jitter则要看蓝线的抖动幅度,CD不要超过15%(图中的结果最大值在40%左右),DVD不要超过8%(DVD-ROM/-R/RW)或9%(+R/RW)。不过PTP似乎没有像CD-DVD Speed那样给出准确的数值,不能不说是一个遗憾。

还是那句老话,PTP的测试也只代表了光盘在PlexWriter Premium或PX-712上的读取表现,这是与它们的读盘个性息息相关的。相同的光盘,若用KProbe+建兴光驱进行测试,结果可能会大不一样。

光盘质量测试——CD/DVD Inspector

CD/DVD Inspector是一款光盘数据恢复软件,它可以帮助你最大限度的拷贝出光盘上的数据。而与光盘质量测试相关的,就是Tools菜单下的Readability Test(易读性测试)。

CD/DVD Inspector的介面图,Tools菜单下的Readability Test是我们要用的功能(点击放大)

Readability Test的测试报告,绿色的对勾表示光盘可以在当前光驱下完美读取

Readability Test有三个选项,分别代表了三种测试精度,或者说是取样数量。Quick Scan只对光盘取100次样,并以这100次的读取结果分析光盘的质量。显然这是不客观的,所以我们一般都选择Complete Scan,进行完整的扫描。横坐标代表容量,纵坐标代表CD传输率的倍数,对于DVD来说,则要除以9,如图中以30X为起点,对于DVD来说就是3.3X起步。

事实上,这个测试有点像CD-DVD Speed的ScanDisc,但它给出了驱动器自身可修正的软错误(Soft Error)和驱动器自身不可修复的硬错误(Hard Error)的比例。从这个定义上,我们也可以感觉到光盘质量测试与测试平台之间的密切关系。

需要注意的是,Readability Test的结果也是与所使用的光驱密切相关的。CD/DVD Inspector虽然是光盘数据恢复软件,但前提也是光驱能读取数据,CD/DVD Inspector只是提供了特殊的控制手段以加强光驱的逻辑读取能力,光驱在物理上的读取能力,CD/DVD Inspector是无能为力的。因此,Readability Test也仅限于当前测试平台,若换用其他的光驱,绿色的对勾可能就会变成红色的叉了。

结语:光盘质量莫轻言

刻录质量的问题一直是刻录发烧友所喜欢研究的问题,哪个刻录机更好,哪个盘片更好,哪个版本的Firmware更好等等,都是他们所谈论的话题。而本专题的目的则在于帮助大家了解所谓的刻录质量是指什么,各个参数的详细含义,以及它们对光盘质量的意义。而就测试的方法来说,其实并不止上述4个软件。在刻录界有着深厚功力的日本三洋公司也有一款针对其刻录产品的测试软件——UM Doctor,但它只能在三洋的OptoRite DD0405/DD0401/DD0203/DD0202或它们的OEM机型上使用。由于它们在中国大陆的普及率很小,所以很少有人采用它进行质量测试(在国外也很少见人用它)。

UMDoctorPro.II.配合相应的三洋光驱也是测试光盘C1/C2或PI/PIF(UMDoctorPro叫UncPI)的利器

事实上,对于具体的用户而言,他们的刻录设备与读取设备基本上是固定了的(对于某些用户,刻录机=读取设备),所以就刻录质量来说,如果在这种固定的组合中能得到比较好的测试结果,用户就应该满足了。这里,我们可以将CD-DVD Speed中的ScanDiscc测试或CD/DVD Inspector的Readability Test测试作为质量测试的底线,再配合CD-DVD Speed的传输曲线测试,如果能顺利的读取,就可以说在你使用的环境中,光盘的质量是没有问题的。没有必要过分的纠缠于C1/C2、PI/PO的测试数据中(如果能进行相关测试的话)。

要知道刻录机、刻录盘、读取光驱(相当于测试平台)、刻录机Firmware版本这四者中,任何一方的改变都会影响到最终的质量评测结果。有时很可能会出现,媒体测试中表现很好的刻录组合刻出的光盘,在自己使用的读取设备上不能读取的情况。也有可能出现,测试中表现较差的组合通过刷新Firmware后表现良好的情况,但媒体可能会因为条件的限制,很少能进行跟进性测试。

对于不少人来说,光盘的可流通性非常重要,有时很可能会帮朋友刻上几张盘。因此,刻完的光盘的兼容性就是非常关键的问题。但这种兼容性算不算是质量问题呢?如果它在某些光驱上的评测结果十分完美,但在某些光驱上根本认不出来,我觉得就不能说光盘的质量是差的,这很可能是光驱在读盘方面的“个性”使然,大家想一想DVD影碟机的挑盘现象就会明白。所以,经常需要与他人分享刻录成果的用户,可以更关注一下刻录盘的兼容性问题,这往往比单纯的追求刻录质量更有用处。

对于媒体而言,则要在相关的测试中做出正确的引导,如果有条件,刻录盘(或刻录机)与读取设备的测试范围要尽可能的大,以向读者提供更为完善的参考信息。由于可能的组合太多,范围太大,单纯的以一两款盘片对刻录机进行刻录质量的定论,或以一两款刻录机的结果对某一刻录光盘的质量进行评判都是不可取的。反过来,读者在观看这类取样数较少的测试报告时,也不能将媒体的测试结果绝对化,但测试的范围越广,可参考性也就越大,就这一点来说,媒体所做的刻录质量测试的价值仍是不可否认的。

好啦,有关光盘刻录质量的探讨到此就告一段落了,希望本专题能给各位光存储爱好者带来某种启发或帮助。也欢迎各位新老朋友来《存储时代》的论坛进行更为深入的讨论。



光驱检测工具   这是从光盘记录工具Nero专业版里分离出来的一个独立工具,可用来检测光驱的信息,包括光驱的型号、生产厂家、驱动信息、读写速度、光盘信息等,不仅如此,它还集成了设备管理器功能,可供用户方便地查看系统信息。   整个压缩包仅两个文件,大小1.36MB 立即下载

相关推荐

光盘检查完整性

光盘检查完整性,坏盘必备

Linux光盘检测,qpxtool

软件简介各位使用Linux系统的刻录发烧友有福了。不用再为了检测光碟品质而切换到Windows系统了。因为在Linux系统里也有支持光碟品质检测的软件!它的名字是QPxTool。虽说05年底QPxTool就诞生了,但最近才被以rpm包的形式提供给Fedora用户。首先看下它的界面:如果你电脑内没有刻录机或光驱,那么这个程序就打不开。打开时最好使用root权限,不然可能容易出现这样那样的奇怪问题……...

weixin_42511217的博客 578

笔记本电脑的光驱测试软件

帮助你测试下你的笔记本电脑的光驱 尤其是想买本的朋友更是需要这款软件

如何鉴别光盘的质量级别

这些等级是如何制定出的呢?1)根据母盘的生产阶段划分:一张母盘的使用寿命一般在10万片,母盘上了生产线后压制的前几万张为A级盘;后几万张为B级盘;最后的就是C级盘。2)根据质量检测划分:光盘生产线上的质量检测设备会对每一片CDR进行检测,对于有质量问题的盘片,根据其严重程度,将其划分为A,B,C,废品级别。一般来讲,B,C级的CDR在电气性能方面可以达到刻录要求,即可以进行刻录,但是在外观和刻录节

boy_north的专栏 5万+

MD5校验-光盘镜像刻录完整检验工具

MD5校验-把ISO光盘镜像拖拽到这个软件的窗口就可以算出MD5验证你下载的ISO是否完整

OrangePi Kunpeng Pro 安装 ROS2 + Gazebo

OrangePi Kunpeng Pro 的优点很明显,内置openEuler,配备PD电源,做到开箱即用;板子设计也不错,风扇噪音不大,散热良好,昇腾芯片又确保小板子的性能,接口丰富是这类板子共同的优点,也很好的继承了下来,甚至还可以外接固态,可靠性大大提升。使用起来,哪怕不用openEuler的话,也可以很方便的刷Ubuntu来实现一些需要依赖的开发工作,这次没有跑AI模型,所以对算力的优势还没有很明显的感受,下次可以试一下yolo跑跑看。

Arcan 1824

光盘质量检测标准及检测方法

检测完成后,可以查看到光盘详细的检测数据,以蓝光光盘为例,数据包含每层(例如100GB光盘有3层,L0、L1、L2)的最大RSER值、最大BE值和UE值,按照预先选择的质量标准(目前最新版只支持JIS标准和ISO标准,要使用DA/T 74标准可以人工对照标准进行自行比对)进行质量判定,以决定后续操作。要刻录质量较好的光盘,光驱的质量至关重要。后者主要适用于小批量进行光盘检测的场景,搭配1台刻录光驱和1台检测光驱,能够批量对50~100张光盘进行自动检测,并对风险光盘进行自动转刻。

weixin_56245650的博客 1847

实战教程:用YOLOv11+PyQt5打造工地安全帽检测系统(附完整数据集)

本文提供了一份完整的实战指南,详细介绍了如何利用YOLOv11目标检测模型与PyQt5界面库,从零开始构建一个智能工地安全帽检测桌面应用。内容涵盖高质量数据集的准备与标注、YOLOv11模型训练与调优,以及如何使用PyQt5开发流畅、专业的图形用户界面,最终实现一个可实际部署的AI安全监控系统。

plum99的博客 738

20240516_082524 光驱测试软件

Nero InfoTool是一款光驱信息测试软件。它可以检测并展示光驱的各种详细信息,帮助用户快速了解光驱的性能和特性。

pyhui的技术博客 1601

PyTorch实战:5步搞定QAT量化感知训练(附避坑指南)

本文详细介绍了在PyTorch中实施量化感知训练(QAT)的五步实战流程。通过环境准备、模型融合、伪量化节点与STE原理剖析、校准微调训练、模型转换与导出等步骤,帮助开发者有效压缩模型以适配移动端与边缘设备部署,并提供了关键的超参数设置与常见问题避坑指南。

weixin_29083373的博客 420

Python+Seaborn可视化:双因素方差分析结果这样呈现更专业

本文详细介绍了如何利用Python中的Seaborn和statsmodels库,专业地执行并可视化双因素方差分析结果。通过模拟实验数据,演示了从模型构建、统计检验(包括交互作用分析)到诊断验证的全流程。重点展示了如何使用Seaborn绘制交互效应图、组合分布图及热图,将复杂的统计结果转化为直观、富有洞察力的可视化图表,助力科研论文与商业报告的专业呈现。

weixin_29274969的博客 137

实验案例一:使用虚拟机测试光盘镜像

BDQN公司系统管理员小王因工作需要.从互联网下载了一份工具光盘的镜像.需要刻录成光盘使用。为避免下载的镜像错误或存在安全隐患等情况导致刻录的光盘不能使用,小王决定在虚拟机中测试该光盘镜像。

2401_83328001的博客 728

深入解析UDS 0x19服务:DTC状态掩码与故障诊断实战

本文深入解析了UDS诊断协议中的核心0x19服务(ReadDTCInformation),重点拆解了DTC状态掩码(DTCStatusMask)的八个状态位及其在故障生命周期中的联动逻辑。通过实战案例,详细说明了从故障发生、确认到清除的全过程,并介绍了如何利用该服务进行深度诊断,包括读取扩展数据(如冻结帧)和避免常见开发误区,是理解汽车ECU故障管理机制的关键。

weixin_29248313的博客 323

光盘在电脑上为什么放不出来_电脑不能播放DVD光盘怎么办

  检查一下是否是光驱本身硬件或者是光驱的驱动出现问题;播放电影DVD需要使用解码播放软件,如果确认硬件没问题时可以尝试使用自带的WMP播放器或者下载一个播放软件。以下是详细介绍:  1、首先使用排除法,使用其他的光盘放到光驱中看一下是否是光驱硬件出现问题,或者是驱动出现问题导致的;  2、查看一下是否是光盘本身的原因,可能有刮痕,可能是盗版碟无法识别;  3、如果您的DVD光盘是电影碟,电脑一般...

weixin_39630735的博客 4787

智能家居系统设计:基于MATLAB的智能家居系统设计和仿真,包括智能家居控制、家庭能源管理和家庭安全监控

基于 MATLAB 的智能家居系统设计方法可以有效地解决各类智能家居问题。

走向CTO的路上... 1775

100天精通Python(基础篇)——第3天:运算符全解析(算术运算符、比较运算符、逻辑运算符、赋值运算符及其优先级规则)

100天精通Python(基础篇)——第3天:运算符全解析(算术运算符、比较运算符、逻辑运算符、赋值运算符及其优先级规则)

努力让自己发光,对的人才能迎着光而来 14万+

麒麟操作系统之光盘刻录

刻录步骤: 1.依次点击开始菜单→所有软件→刻录; 2.点击“数据刻录”按钮; 3.点击左上角的“+”按钮,选择需要刻录的文件后点击“添加”按钮;

weixin_47461537的博客 3万+

【高级强化学习:算法、优化与泛化】第13章 扩散模型策略优化(Diffusion Policy Optimization)

\quad$ 计算均值 $\mu_t = \frac{1}{\sqrt{\alpha_t}} \left( x_t - \frac{1 - \alpha_t}{\sqrt{1 - \bar{\alpha}_t}} \tilde{\epsilon} \right)$.$\quad$ 组合得分估计: $\tilde{\epsilon} = \epsilon_{\text{unc}} + w \cdot (\epsilon_{\text{con}} - \epsilon_{\text{unc}})$.

u012133341的博客 339

制作超高容量视频光盘KVCDKDVD光盘制作全攻略8

四 测试为了说明KVCD的优势,这里我就用我亲自测试的结果来说明吧,其实我已经做了很多张KVCD的HDVD,效果不错。这里用《企业管理视频/时代光华区域销售管理讲座》这套讲座来做测试吧(这也是我今天在制作的内容)。图1是第一节内容的播放窗口,大家可以看一看播放时间(36分钟)和容量(40M)。为了方便说明,我从这一节里面剪出来5分钟作为测试源,如图2。文件1是5分钟的R

xwpm9868的专栏 764

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

地磁校准 椭球校准_如何校准电视

地磁校准 椭球校准You don’t have to spend a fortune to get a better picture from your TV. Our instructions and a $30 disc are all you need to perform a basic calibration. 您无需花大价钱就可以从电视上获得更好的图像。 执行基本校准只需要我们的说明和...

weixin_26715991的博客 1009

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

BDInfo深度指南:掌握蓝光光盘技术规格分析的完整解决方案

对于影视技术人员、媒体档案管理者和蓝光收藏爱好者来说,精确分析蓝光光盘的技术规格一直是个专业挑战。BDInfo作为一款专业的开源工具,专门解决蓝光光盘视频音频技术规格的深度分析需求。这款强大的蓝光光盘分析工具能够帮助您全面了解光盘容量、播放列表结构、编解码器参数和码率分布,为专业制作、质量控制和技术研究提供可靠的数据支持。 ## 🔍 为什么需要专业的蓝光光盘分析工具? 蓝光光盘作为高清媒体存

gitblog_00422的博客 343

项目管理学习之一(软件归档_4)—XXX子公司

我想每一个大公司应该都有它自己的项目规范化管理方法,我现在所处的XX华公司自八十年代创办至今,几十年的历史已经形成了自己的一套项目管理方法。 怀揣每一份经历都应该带来每一份成长的想法,我觉得我很有必要认真地学习一下现在所在公司的项目管理方法,并记录在此。 先从和软件开发息息相关软件归档说起吧。 在XXX子公司,一个软件归档需提交给技术工艺部的资料包含两部分,一个是纸质文档,一个刻

专注于嵌入式开发 1378

用nero刻录系统光盘及MD5校验

用nero刻录系统光盘及MD5校验

hfgyfd的博客 1185

项目管理学习之一(软件归档_3)—XXX子公司

我想每一个大公司应该都有它自己的项目规范化管理方法,我现在所处的XX华公司自八十年代创办至今,几十年的历史已经形成了自己的一套项目管理方法。 怀揣每一份经历都应该带来每一份成长的想法,我觉得我很有必要认真地学习一下现在所在公司的项目管理方法,并记录在此。 先从和软件开发息息相关软件归档说起吧。 在XXX子公司,一个软件归档需提交给技术工艺部的资料包含两部分,一个是纸质文档,一个刻

专注于嵌入式开发 1400

《QTP自动化测试实践》读者来信 - 买《QTP自动化测试实践》后的一些看法

今天收到一位读者的来信,对《QTP自动化测试实践》一书提出了宝贵的意见。 [b]原始短消息:[/b] [url=http://bbs.51testing.com/pm.php?action=view&amp;folder=inbox&amp;pmid=3409782]购买《QTP自动化测试实践》后的一些看法[/url][quote]你好!感谢你在忙碌中能看我的消息。我是一个在深圳工作的QTP...

kuwoleft 111

什么是档案级光盘?它的寿命是多少年?

我们经常会听到有人在说:CD、DVD光盘的寿命多少多少年,蓝光光盘的寿命多少多少年。实际上这个说法是不对的,至少是不准确的,因为同样是CD、DVD光盘或者蓝光光盘,也分等级,而不同等级的光盘的寿命是不一样的,甚至差别很大。其中等级高的被称为档案级光盘,是可记录光盘中的优选品,其各项技术指标优于工业标准,自然寿命也比普通光盘长很多。而普通光盘则保存年份短、光盘品质一般、甚至会出现废盘,质量最好的普通光盘的寿命也不会超过10年。今天我们就来聊聊档案级光盘以及它的寿命问题。

Macrowing的博客 3474
上一篇: T400 R400 T500 W500 简体恢复盘全收录(XP;Vista U X86;Vista
下一篇: 《绝冬城之夜2》(Neverwinter Nights 2 CHT) 国际中文版(增加简体补丁)
mlxia
博客等级 码龄26年 28粉丝 410原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值