发明内容
本发明的目的在于提出一种基于机器视觉的鱼饲料投放方法及系统,以解决现有技术中所存在的一个或多个技术问题,至少提供一种有益的选择或创造条件。
本公开提供了一种基于机器视觉的鱼饲料投放方法及系统,通过在水面上方设置多个采样点,选取多个时刻进行采样,分别从各采样点上获取各时刻各采样点对应的水面上的透光率,通过目标识别算法获取各时刻水面上鱼的数量作为浮面数,根据透光率和浮面数计算水面上的饱和程度,根据饱和程度选择若干个采样点作为投放采样点。
为了实现上述目的,根据本公开的一方面,提供一种基于机器视觉的鱼饲料投放方法,所述方法包括以下步骤:
S100,在水面上方设置多个采样点,选取多个时刻进行采样;
S200,于多个时刻,分别从各采样点上获取各时刻各采样点对应的水面上的透光率;
S300,于多个时刻,通过目标识别,获取各时刻水面上鱼的数量作为浮面数;
S400,根据透光率和浮面数,计算水面上的饱和程度。
进一步地,在S100中,在水面上方设置多个采样点,选取多个不同时刻进行采样,具体为:在养鱼的水池的水面上方,设置多个不同的采样点,所述采样点处于水面同一水平位置上,所述采样点中包括透光率仪和摄像设备并连接于无线传感网络,可将透光率仪的探测器和光源分别放在水面上与水面下进行检测获取水的透光率,或可通过透光率仪对从采样点处对水面上进行采样所得的水来测试其透光率从而获取各采样点对应的水面上的透光率;
所述多个时刻为具有连续的有先后顺序的多个不同的时刻;
记所述多个时刻中时刻的数量为n,所述多个时刻中时刻的序号为i,i∈[1,n];
记所述多个采样点中采样点的数量为m,所述多个采样点中采样点的序号为j,j∈[1,m]。
进一步地,在S200中,于多个时刻,分别从各采样点上获取各时刻各采样点对应的水面上的透光率,具体为:
所述透光率可为0~1的数值;
记于序号为i的时刻从序号为j的采样点获取的对应的水面上的透光率为trans(i,j);
进一步地,在S300中,于多个时刻,通过目标识别,获取各时刻水面上鱼的数量作为浮面数,具体为:
记于序号为i的时刻水面上的浮面数为fig(i),可通过例如EasyDL图像等的目标检测模型对出现在水面上的鱼进行识别并获取水面上鱼的数量作为浮面数。
进一步地,在S400中,根据透光率和浮面数,计算水面上的饱和程度的方法为:
计算于同一时刻各采样点的透光分布率:首先分别计算同一序号的时刻各采样点的透光率的指数化数值,并对同一序号的时刻各采样点的透光率的指数化数值进行遍历累加求和得到同一序号的时刻各采样点的透光率的指数化数值总和,分别将同一序号的时刻各采样点的透光率的指数化数值除以所述指数化数值总和得到于同一时刻各采样点的透光分布率,具体如,可以记于同一序号为i的时刻序号为j的采样点的透光分布率作trans(i,j)prob,分别计算同一序号为i的时刻各采样点的透光率trans(i,j)的指数化数值exp(trans(i,j)),透光率的指数化数值可为通过以自然常数e为底所述透光率的数值为指数的指数函数获得,函数exp()可表示以自然常数为底的指数函数,所述指数化数值总和可为对同一序号为i的时刻遍历序号为1至m的各采样点的透光率trans(i,j)的指数化数值exp(trans(i,j))的累加求和,同一序号为i的时刻序号为第j个的采样点的透光率的指数化数值除以所述指数化数值总和后所得的商即为序号为i的时刻序号为第j个的采样点的透光分布率作trans(i,j)prob,计算透光分布率可以更好地通过光学的透光性质避免由于化学生物检验在水体中的不便而带来的误差;
或者,为了突出单个采样点的透光率的指数化数值与所述指数化数值总和的平均化数值之间的对比程度,还可以对分母部分的指数化数值总和进行平均化的处理;
计算所述多个时刻中各时刻的浮面波动率:获取当前的时刻在所述多个时刻中对应的序号的具体数值,并获取当前的时刻的浮面数,获取当前的时刻之前的各时刻的浮面数,分别计算所述当前的时刻的浮面数除以当前的时刻之前的各时刻的浮面数的数值比例并以各数值比例的算术平均数当前的时刻的浮面波动率;
随着当前的时刻的序号的具体数值从1向n逐个推移,由浮面波动率的计算公式计算得到n个时刻中各时刻的浮面波动率并进行记录保存,这样可以更有效地监测到鱼被饲料吸引而浮出水面进食的数量和频率,其中序号为i的时刻的浮面波动率可记为fig(i)gd;
根据各时刻各采样点的透光分布率以及各时刻的浮面波动率,计算各采样点的饱和趋势:一个采样点的饱和趋势为,当各时刻存在其上一时刻,则分别计算该采样点各时刻的透光分布率与其上一时刻的透光分布率的比值作为采样点各时刻的透光分布率先验比,并分别计算各时刻的浮面波动率与其上一时刻的浮面波动率的比值作为各时刻的浮面波动率先验比,对采样点各时刻的透光分布率先验比与各时刻的浮面波动率先验比进行按时刻的分别计算两者数值之乘积并遍历各时刻进行累加求和(其中,两者数值之乘积即采样点同一时刻的透光分布率先验比与所述同一时刻的浮面波动率先验比数值之乘积,可以有利于提取两者数值的联合的线性数值特征),得到的数值即为该采样点的饱和趋势,具体过程可为:
可将序号为j的采样点的饱和趋势记为Satrad(j),选取从序号为2的时刻开始至序号为n的时刻进行遍历,当序号为i的时刻存在上一个时刻,则记所述序号为i的时刻的上一个时刻为序号i-1的时刻,序号i-1的时刻序号为第j个的采样点的透光分布率为trans(i-1,j)prob,序号i-1的时刻的浮面波动率为fig(i-1)gd;
由于饱和趋势的数值计算是来自于透光分布率与浮面波动率这类基于物性数据而得的特征,可以避免由于化学生物检验在水体中的不便而带来的误差,可以更有效地检测鱼饲料在水面是被吃掉了还是溶解堆积了,也可以监测到鱼被饲料吸引而浮出水面进食的频率,从而可以更好地对水面上饲料和鱼的饱和程度进行特征的计算。
于此得各个采样点对应的各个饱和趋势的数值,将所述各个采样点分别对应的各个饱和趋势的数值组成的数组作为水面上的饱和程度,可得m个采样点对应的m个饱和趋势的数值,将所述m个采样点分别对应的m个饱和趋势的数值组成的数组作为水面上的饱和程度。
进一步地,所述一种基于机器视觉的鱼饲料投放方法还可以包括:S500,根据饱和程度,选择若干个采样点作为投放采样点,具体为:
根据水面上的饱和程度,选出其中饱和趋势的数值的中位数或众数作为饱和趋势均值,并选出其中饱和趋势的最小值的数值作为饱和趋势最小值;
分别对每个采样点计算其饱和趋势与饱和趋势均值和饱和趋势最小值的距离,得到饱和趋势分布距离,具体可为:
可以记所述饱和趋势均值的数值为avgSatrad,记所述饱和趋势最小值的数值为minSatrad,分别将序号为j的采样点对应的饱和趋势的数值记为Satrad(j),在一些实施例子中,可以定义一采样点对应的饱和趋势的数值与所述饱和趋势均值和所述饱和趋势最小值的距离为饱和趋势分布距离,记序号为j的采样点对应的饱和趋势分布距离为distance(j),
在一些实施例子中,以绝对值化处理后的Satrad(j)减avgSatrad数值之差作为分子,再以绝对值化处理后的Satrad(j)减minSatrad数值之差作为分母,以分子除以分母可得distance(j)的数值,如此可以简便直接地通过两者分别计算差之绝对值检测出采样点的饱和趋势超越平均值、最小值的波动趋势,distance(j)的计算公式可为:
,
或者,在一些实施例子中,若当存在有采样点对应的饱和趋势数值等于饱和趋势最小值时,distance(j)的计算公式还可为:
,
其中,以指数化处理后的Satrad(j)减avgSatrad数值之差作为分子,再以指数化处理后的Satrad(j)减minSatrad数值之差作为分母,以分子除以分母可得distance(j)的数值,这样的好处是可以更有效地比对一个采样点的饱和趋势与饱和趋势均值、饱和趋势最小值的数值之差进行数值比例的提取,从而更好地检测出采样点的饱和趋势超越平均值、最小值的波动趋势,而指数化函数exp()表示以自然常数为底的指数函数,可以保证采样点的饱和趋势超越平均值、最小值的波动趋势在计算过程中不因分母为零造成数据的丢失,这样可以更突出地捕获到那些超出平均水平和最低水平具有最突出的概率分布特征的采样点,这样的采样点更具有提高饲料投放的效率的概率分布性潜力。
其中,根据饱和趋势分布距离选出若干个采样点作为投放采样点,具体可为:
在一些实施例中,可以对各采样点根据对应的饱和趋势分布距离按数值从小到大的顺序进行排序,然后按顺序选取其中排在头k个的采样点作为投放采样点,其中k取值范围可属于数值1至数值m的三分之一;
在一些实施例中,可优选地,可以根据对应的饱和趋势分布距离选出数值超过各采样点的饱和趋势分布距离的算术平均值的采样点作为投放采样点。采用目标识别算法准确获取水面上鱼的数量,避免了人工估计误差可能带来的影响,同时通过计算水面饱和程度选择投放采样点,可以更好地控制投放量,避免鱼群因过度饵料而浪费或者因过少而得不到充分满足。
进一步地,所述一种基于机器视觉的鱼饲料投放方法还可包括:
可优选地,在所述投放采样点处进行物料的投放。
本公开还提供了一种基于机器视觉的鱼饲料投放系统,所述一种基于机器视觉的鱼饲料投放系统包括:处理器、存储器及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述一种基于机器视觉的鱼饲料投放方法中的步骤,所述一种基于机器视觉的鱼饲料投放系统可以运行于桌上型计算机、笔记本电脑、掌上电脑及云端数据中心等计算设备中,可运行的系统可包括,但不仅限于,处理器、存储器、服务器集群,所述处理器执行所述计算机程序运行在以下系统的单元中:
采样单元,用于在水面上方设置多个采样点,选取多个时刻进行采样;
透光率获取单元,用于多个时刻,分别从各采样点上获取各时刻各采样点对应的水面上的透光率;
浮面数计算单元,用于多个时刻,通过目标识别,获取各时刻水面上鱼的数量作为浮面数;
饱和程度计算单元,用于根据透光率和浮面数,计算水面上的饱和程度;
投放采样点筛选单元,用于根据饱和程度,选择若干个采样点作为投放采样点。
本公开的有益效果为:本公开提供了一种基于机器视觉的鱼饲料投放方法及系统,通过在水面上方设置多个采样点,选取多个时刻进行采样,分别从各采样点上获取各时刻各采样点对应的水面上的透光率,通过目标识别算法获取各时刻水面上鱼的数量作为浮面数,根据透光率和浮面数计算水面上的饱和程度,根据饱和程度选择若干个采样点作为投放采样点,可以更好地控制投放量,避免鱼群因过度饵料而浪费或者因过少而得不到充分满足。
具体实施方式
以下将结合实施例和附图对本公开的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本公开的目的、方案和效果。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
如图1所示为根据本发明的一种基于机器视觉的鱼饲料投放方法的流程图,下面结合图1来阐述根据本发明的实施方式的一种基于机器视觉的鱼饲料投放方法及系统。
本公开提出一种基于机器视觉的鱼饲料投放方法,所述方法具体包括以下步骤:
S100,在水面上方设置多个采样点,选取多个时刻进行采样;
S200,于多个时刻,分别从各采样点上获取各时刻各采样点对应的水面上的透光率;
S300,于多个时刻,通过目标识别,获取各时刻水面上鱼的数量作为浮面数;
S400,根据透光率和浮面数,计算水面上的饱和程度;
S500,根据饱和程度,选择若干个采样点作为投放采样点。
进一步地,在S100中,在水面上方设置多个采样点,选取多个不同时刻进行采样,具体为:在养鱼的水池的水面上方,设置多个不同的采样点,所述采样点处于水面同一水平位置上,所述采样点中包括透光率仪和摄像设备并连接于无线传感网络,可将透光率仪的探测器和光源分别放在水面上与水面下进行检测获取水的透光率,或可通过透光率仪对从采样点处对水面上进行采样所得的水来测试其透光率从而获取各采样点对应的水面上的透光率,所述透光率仪可为例如LS116透光率仪的采用光源的平行光路以及接收器聚光设计能够测量大厚度材料的设备;
所述多个时刻为具有连续的有先后顺序的多个不同的时刻;
记所述多个时刻中时刻的数量为n,所述多个时刻中时刻的序号为i,i∈[1,n];
记所述多个采样点中采样点的数量为m,所述多个采样点中采样点的序号为j,j∈[1,m]。
进一步地,在S200中,于多个时刻,分别从各采样点上获取各时刻各采样点对应的水面上的透光率,具体为:
所述透光率可为0~1的数值;
记于序号为i的时刻从序号为j的采样点获取的对应的水面上的透光率为trans(i,j)。
进一步地,在S300中,于多个时刻,通过目标识别,获取各时刻水面上鱼的数量作为浮面数,具体为:
记于序号为i的时刻的浮面数为fig(i),可通过目标检测模型对出现在水面上或水下的鱼进行识别并获取水面上或水下识别到的鱼的数量作为浮面数(其中,具体步骤还可以参考Kesci水下目标检测算法的开源代码,或者也可参考其相关的文献:[1] YuxiaoZhang, Alexander Carballo, Hanting Yang, Kazuya Takeda. Autonomous DrivinginAdverse Weather Conditions: A Survey[J].arXiv preprint arXiv:2112.08936v1,2021;[2] Chen L, Liu Z ,Tong L , et al. Underwater object detection usingInvert Multi-Class Adaboost with deep learning[J].2020;[3] Lin W H ,Zhong J X,Liu S , et al. RoIMix: Proposal-Fusion among Multiple Images for UnderwaterObject Detection[J].2019)。
进一步地,在S400中,根据透光率和浮面数,计算水面上的饱和程度的方法为:
计算于同一时刻各采样点的透光分布率:首先分别计算同一序号的时刻各采样点的透光率的指数化数值,并对同一序号的时刻各采样点的透光率的指数化数值进行遍历累加求和得到同一序号的时刻各采样点的透光率的指数化数值总和,分别将同一序号的时刻各采样点的透光率的指数化数值除以所述指数化数值总和得到于同一时刻各采样点的透光分布率,具体如,可以记于同一序号为i的时刻序号为j的采样点的透光分布率作trans(i,j)prob,分别计算同一序号为i的时刻各采样点的透光率trans(i,j)的指数化数值exp(trans(i,j)),透光率的指数化数值可为通过以自然常数e为底所述透光率的数值为指数的指数函数获得,函数exp()可表示以自然常数为底的指数函数,所述指数化数值总和可为对同一序号为i的时刻遍历序号为1至m的各采样点的透光率trans(i,j)的指数化数值exp(trans(i,j))的累加求和,同一序号为i的时刻序号为第j个的采样点的透光率的指数化数值除以所述指数化数值总和后所得的商即为序号为i的时刻序号为第j个的采样点的透光分布率作trans(i,j)prob,trans(i,j)prob的计算公式可表示为:
,
例如,于序号为1的时刻对应序号第2个的采样点的透光分布率作trans(1,2)prob,
或者,为了突出单个采样点的透光率的指数化数值与所述指数化数值总和的平均化数值之间的对比程度,可以对分母部分的指数化数值总和进行平均化的处理,trans(i,j)prob的计算公式还可表示为:
,
计算所述多个时刻中各时刻的浮面波动率:获取当前的时刻在所述多个时刻中对应的序号的具体数值,并获取当前的时刻的浮面数,获取当前的时刻之前的各时刻的浮面数,分别计算所述当前的时刻的浮面数除以当前的时刻之前的各时刻的浮面数的数值比例并以各数值比例的算术平均数当前的时刻的浮面波动率;
其中,在一些实施例,可以记当前的时刻在所述多个时刻中对应的序号的具体数值为i`,当前的时刻的浮面数为fig(i`),获取当前的时刻之前当序号i属于1到i`的各时刻的浮面数,当前的时刻的浮面波动率fig(i`)gd可表述为:
,
在一些实施例,可优选地,所述当前的时刻的浮面数除以当前的时刻之前的各时刻的浮面数的数值比例可以表示为(fig(i`)+1)/(fig(i)+1),其中值得注意的是各数值比例中分子和分母数值上都增加了1,这样是为了防止特征提取的过程中因分母为零不可计算导致特征的丢失,有利于更好地保证各时刻的数值特征连续可导,则当前的时刻的浮面波动率的计算公式可表述为:
,
随着当前的时刻的序号的具体数值从1向n逐个推移,由浮面波动率的计算公式计算得到n个时刻中各时刻的浮面波动率并进行记录保存,其中序号为i的时刻的浮面波动率可记为fig(i)gd;
根据各时刻各采样点的透光分布率以及各时刻的浮面波动率,计算各采样点的饱和趋势:一个采样点的饱和趋势为,当各时刻存在其上一时刻,则分别计算该采样点各时刻的透光分布率与其上一时刻的透光分布率的比值作为采样点各时刻的透光分布率先验比,并分别计算各时刻的浮面波动率与其上一时刻的浮面波动率的比值作为各时刻的浮面波动率先验比,对采样点各时刻的透光分布率先验比与各时刻的浮面波动率先验比进行按时刻的分别计算两者数值之乘积并遍历各时刻进行累加求和(其中,两者数值之乘积即采样点同一时刻的透光分布率先验比与所述同一时刻的浮面波动率先验比数值之乘积,可以有利于提取两者数值的联合的线性数值特征),得到的数值即为该采样点的饱和趋势,具体过程可为:
可将序号为j的采样点的饱和趋势记为Satrad(j),选取从序号为2的时刻开始至序号为n的时刻进行遍历,当序号为i的时刻存在上一个时刻,则记所述序号为i的时刻的上一个时刻为序号i-1的时刻,序号i-1的时刻序号为第j个的采样点的透光分布率为trans(i-1,j)prob,序号i-1的时刻的浮面波动率为fig(i-1)gd,计算Satrad(j)的公式可为:
,
于此得各个采样点对应的各个饱和趋势的数值,将所述各个采样点分别对应的各个饱和趋势的数值组成的数组作为水面上的饱和程度,可得m个采样点对应的m个饱和趋势的数值,将所述m个采样点分别对应的m个饱和趋势的数值组成的数组作为水面上的饱和程度。
进一步地,在S500中,根据饱和程度,选择若干个采样点作为投放采样点的方法为:
根据水面上的饱和程度,选出其中饱和趋势的数值的中位数或众数作为饱和趋势均值,并选出其中饱和趋势的最小值的数值作为饱和趋势最小值;
分别对每个采样点计算其饱和趋势与饱和趋势均值和饱和趋势最小值的距离,得到饱和趋势分布距离,具体可为:
可以记所述饱和趋势均值的数值为avgSatrad,记所述饱和趋势最小值的数值为minSatrad,分别将序号为j的采样点对应的饱和趋势的数值记为Satrad(j),在一些实施例子中,可以定义一采样点对应的饱和趋势的数值与所述饱和趋势均值和所述饱和趋势最小值的距离为饱和趋势分布距离,记序号为j的采样点对应的饱和趋势分布距离为distance(j),
在一些实施例子中,以绝对值化处理后的Satrad(j)减avgSatrad数值之差作为分子,再以绝对值化处理后的Satrad(j)减minSatrad数值之差作为分母,以分子除以分母可得distance(j)的数值,如此可以简便直接地通过两者分别计算差之绝对值检测出采样点的饱和趋势超越平均值、最小值的波动趋势,distance(j)的计算公式可为:
,
或者,在一些实施例子中,若当存在有采样点对应的饱和趋势数值等于饱和趋势最小值时,distance(j)的计算公式还可为:
,
其中,以指数化处理后的Satrad(j)减avgSatrad数值之差作为分子,再以指数化处理后的Satrad(j)减minSatrad数值之差作为分母,以分子除以分母可得distance(j)的数值,这样的好处是可以更有效地比对一个采样点的饱和趋势与饱和趋势均值、饱和趋势最小值的数值之差进行数值比例的提取,从而更好地检测出采样点的饱和趋势超越平均值、最小值的波动趋势,而指数化函数exp()表示以自然常数为底的指数函数,可以保证采样点的饱和趋势超越平均值、最小值的波动趋势在计算过程中不因分母为零造成数据的丢失。
其中,根据饱和趋势分布距离选出若干个采样点作为投放采样点,具体可为:
在一些实施例中,可以对各采样点根据对应的饱和趋势分布距离按数值从小到大的顺序进行排序,然后按顺序选取其中排在头k个的采样点作为投放采样点,其中k取值范围可属于数值1至数值m的三分之一;
在一些实施例中,可优选地,可以根据对应的饱和趋势分布距离选出数值超过各采样点的饱和趋势分布距离的算术平均值的采样点作为投放采样点;
进一步地,所述一种基于机器视觉的鱼饲料投放方法还可包括:
可优选地,在所述投放采样点处进行包括饲料等的各种物料的投放,所述物料可为包括但不限于例如公开号为CN103598438B的专利文献所述的一种鳜鱼饲料等。由于各种鱼饲料中蛋白质的含量会比较高,在水中溶解后会对透光率进行一定的影响之外,还会对水中的氧气含量进行影响,进而使得鱼的浮面频率产生变化,这样根据饱和趋势分布距离选出若干个采样点作为投放采样点进行投放可以有利于保护鱼类的生长安全。此外,在根据饱和趋势分布距离选出若干个采样点作为投放采样点进行投放之后,还可以继续重新进行计算Satrad(j),有利于进行持续长久的监测。
而在生产试验中,将本发明所述方法应用于鳜鱼的生产养殖中,以两个相同规格且投放相同尾数的鳜鱼养殖池作为实验对照组,在经过100个自然日的对照实验后进行了多项的测量,在其中分别关于平均增重率和平均饲料系数的测量数据中发现:
未使用本发明所述方法的鳜鱼养殖池中平均增重率为347%,使用了本发明所述方法的鳜鱼养殖池中平均增重率为455%,使用了本发明所述方法的鳜鱼养殖池在平均增重率上明显优于未使用本发明所述方法的鳜鱼养殖池;
未使用本发明所述方法的鳜鱼养殖池中平均饲料系数为0.92,使用了本发明所述方法的鳜鱼养殖池中平均饲料系数为0.81,使用了本发明所述方法的鳜鱼养殖池在平均饲料系数上明显优于未使用本发明所述方法的鳜鱼养殖池。
所述一种基于机器视觉的鱼饲料投放系统运行于桌上型计算机、笔记本电脑、掌上电脑或云端数据中心的任一计算设备中,所述计算设备包括:处理器、存储器及存储在所述存储器中并在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述一种基于机器视觉的鱼饲料投放方法中的步骤,可运行的系统可包括,但不仅限于,处理器、存储器、服务器集群。
本公开的实施例提供的一种基于机器视觉的鱼饲料投放系统,如图2所示,该实施例的一种基于机器视觉的鱼饲料投放系统包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述一种基于机器视觉的鱼饲料投放方法实施例中的步骤,所述处理器执行所述计算机程序运行在以下系统的单元中:
采样单元,用于在水面上方设置多个采样点,选取多个时刻进行采样;
透光率获取单元,用于多个时刻,分别从各采样点上获取各时刻各采样点对应的水面上的透光率;
浮面数计算单元,用于多个时刻,通过目标识别,获取各时刻水面上鱼的数量作为浮面数;
饱和程度计算单元,用于根据透光率和浮面数,计算水面上的饱和程度;
投放采样点筛选单元,用于根据饱和程度,选择若干个采样点作为投放采样点。
其中,优选地,本发明中所有未定义的变量,若未有明确定义,均可为人工设置的阈值;优选地,对于单位不同的物理量之间的数值计算,可进行无量纲化处理、归一化处理,以统一不同物理量之间的数值关系。
所述一种基于机器视觉的鱼饲料投放系统可以运行于桌上型计算机、笔记本电脑、掌上电脑及云端数据中心等计算设备中。所述一种基于机器视觉的鱼饲料投放系统包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述例子仅仅是一种基于机器视觉的鱼饲料投放方法及系统的示例,并不构成对一种基于机器视觉的鱼饲料投放方法及系统的限定,可以包括比例子更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述一种基于机器视觉的鱼饲料投放系统还可以包括输入输出设备、网络接入设备、总线等。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器 (Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立元器件门电路或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述一种基于机器视觉的鱼饲料投放系统的控制中心,利用各种接口和线路连接整个一种基于机器视觉的鱼饲料投放系统的各个分区域。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述一种基于机器视觉的鱼饲料投放方法及系统的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
本公开提供了一种基于机器视觉的鱼饲料投放方法及系统,通过在水面上方设置多个采样点,选取多个时刻进行采样,分别从各采样点上获取各时刻各采样点对应的水面上的透光率,通过目标识别算法获取各时刻水面上鱼的数量作为浮面数,根据透光率和浮面数计算水面上的饱和程度,根据饱和程度选择若干个采样点作为投放采样点,可以更好地控制投放量,避免鱼群因过度饵料而浪费或者因过少而得不到充分满足。
尽管本公开的描述已经相当详尽且特别对几个所述实施例进行了描述,但其并非旨在局限于任何这些细节或实施例或任何特殊实施例,从而有效地涵盖本公开的预定范围。此外,上文以发明人可预见的实施例对本公开进行描述,其目的是为了提供有用的描述,而那些目前尚未预见的对本公开的非实质性改动仍可代表本公开的等效改动。