KR20240053658A - 물고기 부피 추정, 중량 추정, 및 분석 값 생성을 위한 시스템 및 방법 - Google Patents
물고기 부피 추정, 중량 추정, 및 분석 값 생성을 위한 시스템 및 방법 Download PDFInfo
- Publication number
- KR20240053658A KR20240053658A KR1020247011928A KR20247011928A KR20240053658A KR 20240053658 A KR20240053658 A KR 20240053658A KR 1020247011928 A KR1020247011928 A KR 1020247011928A KR 20247011928 A KR20247011928 A KR 20247011928A KR 20240053658 A KR20240053658 A KR 20240053658A
- Authority
- KR
- South Korea
- Prior art keywords
- fish
- image
- determining
- segmentation mask
- pixels
- Prior art date
Links
- 241000251468 Actinopterygii Species 0.000 title claims abstract description 337
- 238000000034 method Methods 0.000 title claims description 85
- 238000012544 monitoring process Methods 0.000 claims abstract description 33
- 230000011218 segmentation Effects 0.000 claims description 63
- 238000004458 analytical method Methods 0.000 claims description 25
- 230000004044 response Effects 0.000 claims description 7
- 230000003862 health status Effects 0.000 claims 1
- 239000002028 Biomass Substances 0.000 abstract description 26
- 230000033001 locomotion Effects 0.000 abstract description 23
- 230000008859 change Effects 0.000 abstract description 9
- 238000010191 image analysis Methods 0.000 description 55
- 238000005259 measurement Methods 0.000 description 42
- 238000010801 machine learning Methods 0.000 description 23
- 238000009360 aquaculture Methods 0.000 description 16
- 244000144974 aquaculture Species 0.000 description 16
- 238000007726 management method Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 15
- 230000006399 behavior Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 9
- 230000036541 health Effects 0.000 description 7
- 210000004712 air sac Anatomy 0.000 description 6
- 238000003556 assay Methods 0.000 description 6
- 241000894007 species Species 0.000 description 6
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 238000013527 convolutional neural network Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 241001674048 Phthiraptera Species 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000009182 swimming Effects 0.000 description 4
- 208000004938 Trematode Infections Diseases 0.000 description 3
- 235000019627 satiety Nutrition 0.000 description 3
- 230000036186 satiety Effects 0.000 description 3
- 230000003542 behavioural effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 201000010099 disease Diseases 0.000 description 2
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 2
- 208000015181 infectious disease Diseases 0.000 description 2
- 230000000366 juvenile effect Effects 0.000 description 2
- 230000003137 locomotive effect Effects 0.000 description 2
- 239000008188 pellet Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- HPTJABJPZMULFH-UHFFFAOYSA-N 12-[(Cyclohexylcarbamoyl)amino]dodecanoic acid Chemical compound OC(=O)CCCCCCCCCCCNC(=O)NC1CCCCC1 HPTJABJPZMULFH-UHFFFAOYSA-N 0.000 description 1
- 206010024264 Lethargy Diseases 0.000 description 1
- 241000277275 Oncorhynchus mykiss Species 0.000 description 1
- 241000277331 Salmonidae Species 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000037213 diet Effects 0.000 description 1
- 235000005911 diet Nutrition 0.000 description 1
- 229940079593 drug Drugs 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 238000003708 edge detection Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000012447 hatching Effects 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000009372 pisciculture Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000003134 recirculating effect Effects 0.000 description 1
- 150000003839 salts Chemical class 0.000 description 1
- 235000019553 satiation Nutrition 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01K—ANIMAL HUSBANDRY; AVICULTURE; APICULTURE; PISCICULTURE; FISHING; REARING OR BREEDING ANIMALS, NOT OTHERWISE PROVIDED FOR; NEW BREEDS OF ANIMALS
- A01K61/00—Culture of aquatic animals
- A01K61/90—Sorting, grading, counting or marking live aquatic animals, e.g. sex determination
- A01K61/95—Sorting, grading, counting or marking live aquatic animals, e.g. sex determination specially adapted for fish
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01K—ANIMAL HUSBANDRY; AVICULTURE; APICULTURE; PISCICULTURE; FISHING; REARING OR BREEDING ANIMALS, NOT OTHERWISE PROVIDED FOR; NEW BREEDS OF ANIMALS
- A01K29/00—Other apparatus for animal husbandry
- A01K29/005—Monitoring or measuring activity, e.g. detecting heat or mating
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01K—ANIMAL HUSBANDRY; AVICULTURE; APICULTURE; PISCICULTURE; FISHING; REARING OR BREEDING ANIMALS, NOT OTHERWISE PROVIDED FOR; NEW BREEDS OF ANIMALS
- A01K61/00—Culture of aquatic animals
- A01K61/10—Culture of aquatic animals of fish
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0012—Biomedical image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/593—Depth or shape recovery from multiple images from stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/62—Analysis of geometric attributes of area, perimeter, diameter or volume
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
- G06V10/451—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
- G06V10/454—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/757—Matching configurations of points or features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/05—Underwater scenes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/103—Static body considered as a whole, e.g. static pedestrian or occupant recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/23—Recognition of whole body movements, e.g. for sport training
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/204—Image signal generators using stereoscopic image cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/296—Synchronisation thereof; Control thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/67—Focus control based on electronic image sensor signals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
- G06T2207/10012—Stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
- G06T2207/10021—Stereoscopic video; Stereoscopic image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20076—Probabilistic image processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20112—Image segmentation details
- G06T2207/20132—Image cropping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30128—Food products
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30168—Image quality inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30242—Counting objects in image
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
- H04N7/183—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a single remote source
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A40/00—Adaptation technologies in agriculture, forestry, livestock or agroalimentary production
- Y02A40/80—Adaptation technologies in agriculture, forestry, livestock or agroalimentary production in fisheries management
- Y02A40/81—Aquaculture, e.g. of fish
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Multimedia (AREA)
- Environmental Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Biodiversity & Conservation Biology (AREA)
- Medical Informatics (AREA)
- Artificial Intelligence (AREA)
- Zoology (AREA)
- Animal Husbandry (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Marine Sciences & Fisheries (AREA)
- Geometry (AREA)
- Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
- Radiology & Medical Imaging (AREA)
- Quality & Reliability (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
- Farming Of Fish And Shellfish (AREA)
- Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)
- Investigating Or Analysing Biological Materials (AREA)
- Mechanical Means For Catching Fish (AREA)
- Studio Devices (AREA)
- Closed-Circuit Television Systems (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
일부 실시예에서, 물고기 펜 내 물고기를 모니터링하는 수중 카메라 시스템이 제공된다. 일부 실시예에서, 입체 카메라는 물고기의 치수를 결정하기 위해 사용될 수 있고, 수중 카메라 시스템은 물고기 펜 내의 물고기의 바이오매스를 추정하기 위해 물고기 치수를 사용할 수 있다. 바이오매스 값 및 바이오매스 값의 변화 속도는 물고기 펜 내 물고기의 먹이를 조절하는데 사용될 수 있다. 일부 실시예에서, 입체 카메라에 의해 캡처된 이미지는 물고기에 가변 초점 렌즈 카메라를 포커싱하여 물고기 상태를 진단하는데 사용될 수 있는 고해상도 이미지를 획득하기위해 사용될 수 있다. 일부 실시예에서, 카메라에 의해 캡처된 이미지는 물고기의 운동을 예측하는데 사용될 수 있고, 예측된 운동은 다양한 물고기 모니터링 분석 값을 생성하는데 사용될 수 있다
Description
이 요약은 이하의 상세한 설명에서 더 설명되는 단순화된 형태의 개념들의 선택을 소개하기 위해 제공된다. 이 요약은 청구된 청구물의 주요 특징들을 식별하도록 의도되지 않으며, 청구된 청구물의 범위를 결정하는 도움으로서 사용되도록 의도되지 않는다.
일부 실시예에서, 물고기 펜(fish pen) 내의 적어도 하나의 물고기의 바이오매스(biomass)을 결정하는 컴퓨터-구현 방법이 제공된다. 컴퓨팅 장치는 수중 입체 카메라에 의해 캡처된 이미지에서 물고기의 위치를 검출한다. 컴퓨팅 장치는 이미지 내의 물고기에 대한 세그멘테이션 마스크를 결정한다. 컴퓨팅 장치는 세그멘테이션 마스크가 측정 가능한 물고기와 연관되는지 여부를 결정한다. 세그멘테이션 마스크가 측정 가능한 물고기와 연관된다는 결정에 응답하여, 컴퓨팅 장치는 이미지에 기초하여 물고기의 적어도 하나의 치수를 결정하고, 물고기의 적어도 하나의 치수에 기초하여 물고기의 중량을 결정하고, 물고기의 중량을 물고기 중량 측정치들의 세트에 추가한다.
일부 실시예에서, 물고기 펜 내의 복수의 물고기를 모니터링하기 위한 수중 카메라 시스템이 제공된다. 시스템은 적어도 하나의 카메라 및 적어도 하나의 카메라에 통신 가능하게 결합된 컴퓨팅 장치를 포함한다. 컴퓨팅 장치는 적어도 하나의 카메라로부터의 적어도 하나의 이미지에서 물고기를 검출하고; 적어도 하나의 이미지로부터 물고기의 운동 거동을 결정하고; 물고기의 운동 거동에 적어도 부분적으로 기초하여 적어도 하나의 물고기 모니터링 분석 값을 결정하도록 구성된다.\
일부 실시예들에서, 컴퓨터 실행가능 명령어들이 저장된 비-일시적(non-transitory) 컴퓨터-판독가능 매체가 제공된다. 명령어들은, 컴퓨팅 장치의 하나 이상의 프로세서에 의한 실행에 응답하여, 컴퓨팅 장치로 하여금 물고기 펜 내의 복수의 물고기를 모니터링하기 위한 동작들을 수행하게 하며, 상기 동작들은, 컴퓨팅 장치에 의해, 적어도 하나의 물고기를 묘사하는 수중 카메라 시스템에 의해 캡처된 이미지를 수신하는 것; 컴퓨팅 장치에 의해, 적어도 하나의 물고기가 가려져 있는지 여부에 적어도 부분적으로 기초하여 이미지 내의 적어도 하나의 물고기의 측정 가능성을 결정하는 것; 및 이미지 내의 적어도 하나의 물고기가 측정 가능하다고 결정하는 것에 응답하여, 이미지에 기초하여 적어도 하나의 물고기의 적어도 하나의 특성을 결정하는 것을 포함한다.
일부 실시예에서, 물고기 펜 내의 적어도 하나의 물고기를 모니터링하기 위한 수중 카메라 시스템이 제공된다. 시스템은 입체 카메라, 가변 초점 렌즈 카메라, 및 컴퓨팅 장치를 포함한다. 컴퓨팅 장치는 가변 초점 렌즈 카메라 및 입체 카메라에 통신 가능하게 결합된다. 컴퓨팅 장치는 입체 카메라로부터의 이미지에서 물고기를 검출하고; 입체 카메라로부터의 이미지에 기초하여 가변 초점 렌즈 카메라의 초점을 조정하고; 가변 초점 렌즈 카메라를 사용하여 물고기의 포커싱된 이미지를 캡처하고; 포커싱된 이미지에 적어도 부분적으로 기초하여 적어도 하나의 물고기 모니터링 분석 값을 결정하도록 구성된다.
어떤 특정 요소 또는 행위에 대한 논의를 쉽게 식별하기 위해, 참조 번호에서 가장 중요한 숫자 또는 숫자들은 그 요소가 처음 소개되는 숫자 번호를 참조한다.
도 1은 본 개시의 다양한 양태에 따른 물고기 펜 내의 상태를 모니터링하고 제어하기 위한 시스템의 비-제한적인 예시적인 실시예를 도시하는 개략도이다.
도 2는 본 개시의 다양한 양태에 따른 수중 카메라 시스템의 비-제한적인 예시적인 실시예를 도시하는 블록도이다.
도 3은 본 개시의 다양한 양태에 따른 물고기 펜 내의 복수의 물고기의 전체 바이오매스를 결정하는 방법의 비-제한적인 예시적인 실시예를 도시하는 흐름도이다.
도 4는 본 개시의 다양한 양태들에 따라 이미지에서 세그멘테이션 마스크와 연관된 물고기의 측정 가능성을 결정하기 위한 절차의 비-제한적인 예시적인 실시예를 예시하는 흐름도이다.
도 5는 본 개시의 다양한 양태들에 따른, 가려지지 않은(non-occluded) 세그멘테이션 마스크 및 이미지의 비-제한적인 예시적인 실시예, 뿐만 아니라 가려진(occlude) 세그멘테이션 마스크 및 이미지의 비-제한적인 예시적인 실시예를 예시하는 이미지이다.
도 6은 본 개시의 다양한 양태들에 따른 이미지 및 세그멘테이션 마스크에 기초하여 물고기의 길이를 측정하기 위한 절차의 비-제한적인 예시적인 실시예를 예시하는 흐름도이다
도 7은 본 개시의 다양한 양태에 따른 적어도 하나의 물고기 모니터링 분석 값을 결정하는 방법의 비-제한적인 예시적인 실시예를 도시하는 흐름도이다.
도 8은 본 개시의 다양한 양태에 따른 적어도 하나의 V 모니터링 분석 값을 결정하는 방법의 비-제한적인 예시적인 실시예를 도시하는 흐름도이다.
도 9는 본 개시의 실시예들과 함께 컴퓨팅 장치로서 사용하기에 적합한 컴퓨팅 장치의 비-제한적인 예시적인 실시예를 도시하는 블록도이다.
도 1은 본 개시의 다양한 양태에 따른 물고기 펜 내의 상태를 모니터링하고 제어하기 위한 시스템의 비-제한적인 예시적인 실시예를 도시하는 개략도이다.
도 2는 본 개시의 다양한 양태에 따른 수중 카메라 시스템의 비-제한적인 예시적인 실시예를 도시하는 블록도이다.
도 3은 본 개시의 다양한 양태에 따른 물고기 펜 내의 복수의 물고기의 전체 바이오매스를 결정하는 방법의 비-제한적인 예시적인 실시예를 도시하는 흐름도이다.
도 4는 본 개시의 다양한 양태들에 따라 이미지에서 세그멘테이션 마스크와 연관된 물고기의 측정 가능성을 결정하기 위한 절차의 비-제한적인 예시적인 실시예를 예시하는 흐름도이다.
도 5는 본 개시의 다양한 양태들에 따른, 가려지지 않은(non-occluded) 세그멘테이션 마스크 및 이미지의 비-제한적인 예시적인 실시예, 뿐만 아니라 가려진(occlude) 세그멘테이션 마스크 및 이미지의 비-제한적인 예시적인 실시예를 예시하는 이미지이다.
도 6은 본 개시의 다양한 양태들에 따른 이미지 및 세그멘테이션 마스크에 기초하여 물고기의 길이를 측정하기 위한 절차의 비-제한적인 예시적인 실시예를 예시하는 흐름도이다
도 7은 본 개시의 다양한 양태에 따른 적어도 하나의 물고기 모니터링 분석 값을 결정하는 방법의 비-제한적인 예시적인 실시예를 도시하는 흐름도이다.
도 8은 본 개시의 다양한 양태에 따른 적어도 하나의 V 모니터링 분석 값을 결정하는 방법의 비-제한적인 예시적인 실시예를 도시하는 흐름도이다.
도 9는 본 개시의 실시예들과 함께 컴퓨팅 장치로서 사용하기에 적합한 컴퓨팅 장치의 비-제한적인 예시적인 실시예를 도시하는 블록도이다.
물고기 양식(fish farming)과 같은 수산 양식 기술이 소비를 위한 물고기를 양식하기 위한 방법으로서 더 널리 보급되고 있다. 비교적 새로운 형태의 수산 양식 중 하나는 탁 트인 물에 배치된 물고기 펜을 사용한다. 이러한 시스템은 물고기를 양식하기 위한 유리한 환경을 제공하지만, 물고기 펜의 수중 배치는 펜 내의 상태와 물고기의 건강을 모니터링하는 것을 어렵게 한다. 펜 운용의 효율적인 관리를 위하여 펜 내의 물고기에 대한 정확하고 적시 모니터링을 가질 것이 요구된다. 중량 및 건강은 정확한 모니터링이 요구되는 2가지 조건이다: 물고기 펜 내의 바이오매스의 변화를 모니터링하는 것은 지지 먹이 시스템(supporting feeding system)의 증가 또는 감소에 관한 결정을 통지할 수 있고, 물고기 펜 내의 물고기의 건강을 모니터링하는 것은 물고기에 피해를 주는 임의의 조건에 대한 치료를 제공할지 여부에 관한 결정을 통지할 수 있다.
도 1은 본 개시의 다양한 양태에 따른 물고기 펜 내의 상태를 모니터링하고 제어하기 위한 시스템의 비-제한적인 예시적인 실시예를 도시하는 개략도이다.
도시된 시스템(100)에서, 수산 양식 관리 컴퓨팅 장치(102)는 물고기 펜(104)과 함께 설치된 수중 카메라 시스템(106)에 통신 가능하게 연결된다. 일부 실시예에서, 수중 카메라 시스템(106)은 물고기에 대한 건강 정보 및 바이오매스 추정치 중 적어도 하나를 결정하기 위해 물고기 펜(104) 내의 물고기의 이미지를 캡처하고 분석하도록 구성된다.
일부 실시예에서, 수중 카메라 시스템(106)은 건강 정보 및 바이오매스 추정치 중 적어도 하나를 수산 양식 관리 컴퓨팅 장치(102)에 전송한다. 일부 실시예들에서, 수산 양식 관리 컴퓨팅 장치(102)는 사용자에게 수신된 정보를 제시하여 사용자가 불리한 건강 상태들에 대한 급식 및 치료의 제공 속도를 변경하는 것을 포함하지만 이에 제한되지 않는, 물고기 펜(104)을 관리하기 위한 동작들을 취할 수 있다. 일부 실시예들에서, 수산 양식 관리 컴퓨팅 장치(102)는 정보를 수신하고, 자동화된 공급 펠릿 분배기에 의한 공급 속도를 자동으로 변경하는 것, 물고기 펜(104)의 깊이를 자동으로 변경하는 것, 및 약물을 자동으로 분배하는 것을 포함하지만 이에 제한되지 않는, 정보를 사용자에게 제시하거나 제시하지 않고 관리 동작들을 자율적으로 취할 수 있다.
수산 양식 관리 컴퓨팅 장치(102)가 도 1에서 랩톱 컴퓨팅 장치인 것으로 도시되어 있지만, 일부 실시예들에서, 데스크탑 컴퓨팅 장치, 서버 컴퓨팅 장치, 태블릿 컴퓨팅 장치, 스마트폰 컴퓨팅 장치, 및 클라우드 컴퓨팅 시스템 내의 하나 이상의 컴퓨팅 장치를 포함하지만 이에 제한되지 않는 다른 유형들의 컴퓨팅 장치들이 수산 양식 관리 컴퓨팅 장치(102)에 사용될 수 있다.
또한, 도 1은 수중 카메라 시스템(106)이 개방된 바다와 같은 개방된 물에 잠길 수 있는 수중 물고기 펜인 물고기 펜(104)과 함께 설치되는 예시적인 실시예를 도시한다. 그러나, 이 실시예는 제한적인 것으로 간주되어서는 안되며, 일부 실시예에서, 수중 카메라 시스템(106)은 상이한 환경에서 수중에 설치될 수 있다. 예를 들어, 일부 실시예들에서, 수중 카메라 시스템(106)은 해안선 근처의 양식장(aquadurature site)에서 표면 물고기 펜(surface fish pen)에 설치될 수 있다. 다른 예로서, 일부 실시예에서, 수중 카메라 시스템(106)은 물고기 유충, 부화 및/또는 어린 물고기를 모니터링하기 위해 육상 부화장 또는 어린 물고기집과 연관된 물고기 펜 내에서 수중에서 이용될 수 있다. 또 다른 예로서, 일부 실시예에서, 수중 카메라 시스템(106)은 정교한 물 처리 시스템에 결합된 육상 물고기 펜이 물고기를 키우기 위해 사용되는 재순환 양식 시스템(RAS)과 연관된 물고기 펜에 이용될 수 있다.
도 2는 본 개시의 다양한 양태에 따른 수중 카메라 시스템의 비-제한적인 예시적인 실시예를 도시하는 블록도이다. 수중 카메라 시스템(106)은 건강 및 총 바이오매스와 같은 특성을 결정하기 위해 물고기 펜 내의 물고기를 모니터링하기 위한 고-정확도 시스템을 제공하도록 설계된다.
도시된 바와 같이, 수중 카메라 시스템(106)은 입체 카메라(202), 가변 초점 렌즈 카메라(204), 및 컴퓨팅 장치(206)를 포함한다. 일부 실시예에서, 하우징(도시되지 않음)은 수중 카메라 시스템(106)의 상기 구성요소를 둘러쌀 수 있거나, 또는 수중 카메라 시스템(106)의 몇 구성요소를 둘러쌀 수 있고, 수중 카메라 시스템 (106)의 다른 구성요소들에 대한 외부 장착 위치들을 제공한다.
일부 실시예에서, 입체 카메라(202)는 시차(parallax)가 이미지 내의 픽셀에 대한 깊이 정보를 결정하는 데 사용될 수 있도록 서로 물리적으로 오프셋된 2개의 카메라를 포함하는 카메라이다. 일부 실시예들에서, 전파 시간(time-of-flight) 센서를 포함하지만 이에 제한되지 않는 다른 깊이 검출 기술들을 사용하는 카메라가 입체 카메라(202) 대신에 사용될 수 있다. 일부 실시예들에서, 가변 초점 렌즈 카메라(204)는 제한된 초점 깊이에 걸쳐 고해상도 사진들을 촬영할 수 있는 카메라이다. 초점 깊이가 제한되기 때문에, 가변 초점 렌즈 카메라(204)는 가변 초점 렌즈 카메라(204)로부터의 초점의 거리를 조절하는 메커니즘을 갖는다. 일반적으로, 수중에서 사용하도록 구성된 임의의 적합한 입체 카메라(202) 및 가변 초점 렌즈 카메라(204)가 사용될 수 있다. 일부 실시예들에서, 입체 카메라(202) 및 가변 초점 렌즈 카메라(204) 중 하나 또는 다른 하나만이 존재할 수 있다. 일부 실시예에서, 수중 카메라 시스템 (106)은 입체 카메라 (202) 대신에 또는 그에 추가하여 광 시야각 카메라(wide field of view camera)를 포함할 수 있다.
도시된 바와 같이, 컴퓨팅 장치(206)는 하나 이상의 프로세서(들)(208), 네트워크 인터페이스(210), 및 컴퓨터-판독가능 매체(212)를 포함한다. 일부 실시예들에서, 프로세서(들)(208)는 하나 이상의 상업적으로 이용 가능한 범용 컴퓨터 프로세서를 포함할 수 있으며, 이들 각각은 하나 이상의 프로세싱 코어를 포함할 수 있다. 일부 실시예들에서, 프로세서(들)(208)는 또한 머신 러닝 태스크들을 효율적으로 수행하도록 적응된 하나 이상의 프로세서들을 포함하지만 이에 제한되지 않는 하나 이상의 특수 목적 컴퓨터 프로세서들 및/또는 CUDA(Compute Unified Device Architecture)-가능 GPU(graphics processing unit)를 포함하지만 이에 제한되지 않는 컴퓨터 비전 태스크들을 효율적으로 수행하도록 적응된 하나 이상의 프로세서들을 포함할 수 있다.
일부 실시예에서, 네트워크 인터페이스(210)는 수중 카메라 시스템(106)으로부터 다른 컴퓨팅 장치로 정보를 통신하기 위해 임의의 적절한 통신 기술을 구현할 수 있다. 예를 들어, 일부 실시예들에서, 네트워크 인터페이스(210)는 2G, 3G, 4G, 5G, LTE, Wi-Fi, WiMAX, 블루투스, 위성 기반, 또는 다른 무선 통신 기술을 구현하는 무선 인터페이스를 포함할 수 있다. 다른 예로서, 일부 실시예들에서, 네트워크 인터페이스(210)는 이더넷, USB, 파이어와이어, CAN-BUS, 또는 다른 유선 통신 기술을 구현하는 유선 인터페이스를 포함할 수 있다. 일부 실시예들에서, 네트워크 인터페이스(210)는 다수의 통신 기술들을 포함할 수 있다. 예를 들어, 네트워크 인터페이스(210)는 수중 컴퓨팅 장치(206)를 부표 또는 표면에서의 다른 구성요소 상에 위치된 트랜시버에 결합하는 유선 인터페이스를 포함할 수 있고, 트랜시버는 선박 또는 육상에서 컴퓨팅 장치와 통신하기 위해 무선 통신 기술을 사용할 수 있다. 일부 실시예에서, 수중 카메라 시스템(106)은 플래시 메모리 또는 하드 드라이브를 포함하지만 이에 제한되지 않는 이동식 컴퓨터-판독 가능 매체의 교환을 통해 데이터를 전송할 수 있다.
일부 실시예에서, 컴퓨터-판독 가능 매체(212)는 컴퓨팅 장치(206)에 설치되고, 프로세서(들)(208)에 의한 실행에 응답하여 수중 카메라 시스템(106)이 다양한 엔진 및/또는 데이터 저장소를 제공하게 하는 컴퓨터 실행 가능 명령어를 저장한다. 일부 실시예들에서, 컴퓨터-판독가능 매체(212)는 하드 디스크 드라이브를 포함하지만 이에 제한되지 않는 자기 컴퓨터-판독가능 매체를 포함할 수 있다. 일부 실시예에서, 컴퓨터-판독 가능 매체(212)는 DVD 또는 CD-ROM 드라이브를 포함하지만 이에 제한되지 않는 광학 컴퓨터-판독 가능 매체를 포함할 수 있다. 일부 실시예에서, 컴퓨터-판독 가능 매체(212)는 플래시 메모리를 포함하지만 이에 제한되지 않는 전자 비휘발성 저장 매체를 포함할 수 있다. 일부 실시예들에서, 컴퓨터 실행가능 명령어들 중 적어도 일부는 FPGA(field-programmable gate array), ASIC(application-specific integrated circuit), 또는 컴퓨터 실행가능 명령어들의 저장을 로직을 구현하기 위한 하나 이상의 회로와 조합하는 다른 장치로 프로그래밍될 수 있다. 일부 실시예들에서, 이러한 FPGA 또는 ASIC은 컴퓨터-판독가능 매체(212) 및 컴퓨팅 장치(206) 둘 모두의 양태들을 제공할 수 있다. 일부 실시예들에서, 전술한 컴퓨터-판독가능 매체의 조합들은 예시된 컴퓨터-판독가능 매체(212)를 집합적으로 제공하기 위해 제공될 수 있다.
도시된 바와 같이, 컴퓨터-판독가능 매체(212)는 이미지 분석 엔진(220), 물고기 측정 엔진(222), 물고기 측정 데이터 저장소(214), 물고기 중량 데이터 저장소(216), 및 머신 러닝 모델 데이터 저장소(218)를 포함한다. 일부 실시예에서, 이미지 분석 엔진(220)은 분석을 위해 물고기 펜(104) 내의 물고기의 이미지를 캡처하기 위해 입체 카메라(202) 및/또는 가변 초점 렌즈 카메라(204)로부터 정보를 수신하고 처리한다. 일부 실시예들에서, 이미지 분석 엔진(220)은 또한 이미지들의 전처리, 필터링, 및/또는 다른 분석을 수행한다. 일부 실시예들에서, 이미지 분석 엔진(220)은 제어 커맨드들을 입체 카메라(202) 및/또는 가변 초점 렌즈 카메라(204)에 전송할 수 있다. 일부 실시예들에서, 물고기 측정 엔진(222)은 이미지 분석 엔진(220)에 의해 프로세싱된 이미지들을 수신하고, 이미지들 내의 물고기의 측정치들을 생성한다. 이미지 분석 엔진(220) 및 물고기 측정 엔진(222)에 의해 수행되는 동작들에 대한 추가 설명이 아래에 제공된다.
일부 실시예에서, 물고기 측정 데이터 저장소(214)는 물고기 측정 엔진(222) 및/또는 이미지 분석 엔진(220)에 의해 생성된 물고기의 측정치를 저장한다. 일부 실시예들에서, 물고기 중량 데이터 저장소(216)는 물고기의 하나 이상의 치수와 같은 이미지 분석 엔진(220)에 의해 결정될 수 있는 물고기의 특성들과 물고기의 중량 사이의 상관성들을 저장한다. 일부 실시예들에서, 머신 러닝 모델 데이터 저장소(218)는 이미지들에 대해 다양한 태스크들을 수행하도록 트레이닝된 하나 이상의 머신 러닝 모델들을 저장한다. 예를 들어, 머신 러닝 모델 데이터 저장소(218)는 이미지에서 물고기들을 검출하도록 훈련되는 하나 이상의 컨볼루션 신경망들을 저장할 수 있다. 물고기 측정 데이터 저장소(214), 물고기 중량 데이터 저장소(216), 및 머신 러닝 모델 데이터 저장소(218)에 의해 저장되고 이로부터 검색된 정보에 대한 추가 설명이 아래에 제공된다.
본 명세서에서 사용되는 바와 같이, "엔진"은 C, C++, COBOL, JAVA??, PHP, Perl, HTML, CSS, JavaScript, VBScript, ASPX, Microsoft .NET??, Go, Python 등의 프로그래밍 언어로 기록될 수 있는 하드웨어 또는 소프트웨어 명령어들로 구현되는 로직을 지칭한다. 엔진은 실행가능한 프로그램들로 컴파일되거나 해석된 프로그래밍 언어들로 기록될 수 있다. 소프트웨어 엔진들은 다른 엔진들로부터 또는 자신들로부터 호출 가능할 수 있다. 일반적으로, 본 명세서에 설명된 엔진들은 다른 엔진들과 병합될 수 있거나, 서브-엔진들로 분할될 수 있는 논리 모듈들을 지칭한다. 엔진들은 임의의 유형의 컴퓨터-판독가능 매체 또는 컴퓨터 저장 장치에 저장된 로직에 의해 구현될 수 있고, 하나 이상의 범용 컴퓨터에 저장되고 그에 의해 실행될 수 있으며, 따라서 엔진 또는 그의 기능을 제공하도록 구성된 특수 목적 컴퓨터를 생성한다. 엔진들은 ASIC, FPGA, 또는 다른 하드웨어 장치에 프로그래밍된 로직에 의해 구현될 수 있다.
물고기 측정 데이터 저장소(214), 물고기 중량 데이터 저장소 (216), 및 머신 러닝 모델 데이터 저장소 (218)는 컴퓨터-판독가능 매체(212) 상에 존재하는 것으로 예시되어 있다. 일부 실시예들에서, 물고기 측정 데이터 저장소(214), 물고기 중량 데이터 저장소(216), 및 머신 러닝 모델 데이터 저장소(218) 중 하나 이상은 상이한 컴퓨터-판독가능 매체 또는 상이한 컴퓨팅 장치 상에 존재할 수 있다.
본 명세서에서 사용되는 바와 같이, "데이터 저장소"는 컴퓨팅 장치에 의한 액세스를 위해 데이터를 저장하도록 구성된 임의의 적절한 장치를 지칭한다. 데이터 저장소의 일례는 하나 이상의 컴퓨팅 장치 상에서 실행되고 고속 네트워크를 통해 액세스 가능한 신뢰성이 높은 고속 관계형 데이터베이스 관리 시스템(DBMS)이다. 데이터 저장소의 다른 예는 키-값 저장소이다. 그러나, 문의들에 응답하여 저장된 데이터를 빠르고 신뢰성 있게 제공할 수 있는 임의의 다른 적절한 저장 기술 및/또는 장치가 사용될 수 있고, 컴퓨팅 장치는 네트워크를 통하는 대신에 로컬로 액세스가능할 수 있거나, 클라우드 기반 서비스로서 제공될 수 있다. 데이터 저장소는 또한 하드 디스크 드라이브, 플래시 메모리, RAM, ROM, 또는 임의의 다른 유형의 컴퓨터-판독가능 저장 매체와 같은 컴퓨터-판독가능 저장 매체 상에 조직화된 방식으로 저장된 데이터를 포함할 수 있다. 당업자는 본 개시의 범위를 벗어나지 않고, 본 명세서에 설명된 별개의 데이터 저장소들이 단일 데이터 저장소로 결합될 수 있고, 및/또는 본 명세서에 설명된 단일 데이터 저장소가 다수의 데이터 저장소들로 분리될 수 있다는 것을 인식할 것이다.
도 3은 본 개시의 다양한 양태에 따른 물고기 펜에서 적어도 하나의 물고기의 바이오매스를 결정하는 방법의 비-제한적인 예시적인 실시예를 도시하는 흐름도이다. 카메라 이미지를 사용하여 자동화된 방식으로 물고기 펜에서 물고기를 측정하는 것은 다수의 어려움에 직면한다. 예를 들어, 초점/운동 흐릿함(focus/motion blur), 다른 물고기 또는 물고기 펜의 하드웨어에 의한 물고기의 가려짐(occlusion), 불량한 조명, 또는 기울어진 물고기(angled fish)로 인한 저하된 이미지 품질은 불량한 모니터링 데이터가 생성되게 할 수 있다. 일부 실시예들에서, 방법(300)은 물고기 펜에서 바이오매스의 신뢰성 있는 추정치들을 생성하기에 충분히 정확한 카메라 이미지로부터 데이터를 수집하기 위해 품질 결정 파이프라인 및 고유 측정 기술들을 제공함으로써 이러한 문제들을 회피하려고 시도한다. 일부 실시예들에서, 복수의 물고기의 측정치들이 수집되고, 물고기 펜 내의 물고기의 총 바이오매스를 결정하기 위해 물고기 펜의 물고기의 개체수(population count)의 추정치와 함께 사용될 수 있다.
개시 블록으로부터, 방법(300)은 수중 카메라 시스템(106)의 입체 카메라(202)가 물고기의 이미지를 캡처하는 블록(302)으로 진행한다. 일부 실시예들에서, 입체 카메라(202)에 의해 캡처된 이미지는 하나 초과의 물고기들을 포함할 수 있고, 방법(300)은 단일 이미지에서 다수의 물고기들을 프로세싱할 수 있다. 그러나, 논의의 편의를 위해, 방법(300)의 설명은 이미지가 측정될 단일 물고기를 포함한다고 가정할 것이다. 입체 카메라(202)에 의해 촬영된 영상은 영상 내의 각 픽셀에 대한 컬러 정보 및 깊이 정보를 포함한다.
블록(304)에서, 수중 카메라 시스템(106)의 이미지 분석 엔진(220)은 이미지 내의 물고기의 위치를 결정한다. 일부 실시예들에서, 이미지 분석 엔진(220)은 이미지 내의 물고기의 위치를 정의하는 경계 박스를 결정하기 위해 머신 러닝 모델 데이터 저장소(218)로부터의 제1 머신 러닝 모델을 사용할 수 있다. 일부 실시예들에서, 이미지 내에서 물고기의 위치를 결정하는 데 사용되는 제1 머신 러닝 모델은 입체 이미지에서 물고기를 검출하기 위해 물고기의 다른 이미지들에 대해 트레이닝된 컨볼루션 신경망일 수 있다.
블록(306)에서, 이미지 분석 엔진(220)은 이미지 내의 물고기에 대한 세그멘테이션 마스크를 결정한다. 일부 실시예들에서, 이미지 분석 엔진(220)은 세그멘테이션 마스크를 결정하기 위해 머신 러닝 모델 데이터 저장소(218)로부터의 제2 머신 러닝 모델을 사용할 수 있다. 예를 들어, 이미지 분석 엔진(220)은 블록(304)에서 결정된 물고기의 위치를 포함하는 이미지의 부분을 크롭 아웃할 수 있고, 크롭 아웃된 부분을 제2 머신 학습 모델에 대한 입력으로서 제공할 수 있다. 일부 실시예들에서, 제2 머신 러닝 모델은 다른 컨볼루션 신경망일 수 있다. 일부 실시예들에서, 에지 검출 및 깊이 불연속성들의 검출을 포함하지만 이에 제한되지 않는, 물고기에 대한 세그멘테이션 마스크를 결정하거나 정제하기 위해 다른 기술들이 사용될 수 있다.
절차 블록(308)에서, 이미지 분석 엔진(220)은 세그멘테이션 마스크가 측정 가능한 물고기와 연관되는지를 결정한다. 수중 카메라로부터의 이미지의 자동화된 처리에 있어서의 문제점들 중 하나는 수중 카메라에 의해 캡처된 많은 이미지가 자동화된 분석에 적합하지 않을 수 있다는 것이다. 따라서, 방법(300)은 이미지가 세그멘테이션 마스크와 연관된 물고기를 측정하기에 적합한지를 결정하기 위해 절차 블록(308)에서 임의의 적합한 절차를 사용할 수 있다. 이러한 절차의 하나의 비-제한적인 예가 도 4에 도시되어 있고 아래에서 상세히 설명된다.
방법(300)은 결정 블록(310)으로 진행하고, 여기서 물고기가 측정 가능한 것으로 결정되었는지의 여부에 기초하여 결정이 이루어진다. 물고기가 측정 가능하지 않은 것으로 결정되면, 결정 블록(310)의 결과는 '아니오'이고, 방법(300)은 물고기의 다른 이미지를 캡처하기 위해 블록(302)으로 복귀한다. 그렇지 않고, 물고기가 측정 가능하다고 결정되면, 결정 블록(310)의 결과는 '네'이고, 방법(300)은 절차 블록(312)으로 진행한다.
절차 블록(312)에서, 수중 카메라 시스템(106)의 물고기 측정 엔진(222)은 이미지 및 세그멘테이션 마스크에 기초하여 물고기의 적어도 하나의 치수를 결정하고, 블록(314)에서, 물고기 측정 엔진(222)은 물고기의 적어도 하나의 치수를 사용하여 물고기의 중량을 결정하여 수중 카메라 시스템(106)의 물고기 중량 데이터 저장소(216)에 문의한다. 일부 실시예에서, 물고기 펜(104) 내의 모든 물고기는 동일할 수 있고, 따라서 물고기 중량 데이터 저장소(216)는 물고기의 종을 별도로 결정할 필요 없이 문의될 수 있다. 일부 실시예들에서, 다수의 상이한 종들의 물고기들이 물고기 펜(104)에 존재할 수 있고, 따라서 물고기들의 종을 결정하는 추가적인 단계(예컨대, 머신 학습 모델 데이터 저장소(218)에 저장된 다른 머신 학습 모델에 세그멘테이션 마스크를 제공하는 단계)가 문의에 대한 묘사된 물고기들의 종을 획득하기 위해 수행될 수 있다.
방법(300)은 물고기 중량에 대해 물고기 중량 데이터 저장소(216)에 문의하는데 사용될 수 있는 임의의 치수(또는 치수들)를 결정할 수 있다. 예를 들어, 주어진 종의 물고기의 길이 및/또는 높이를 중량과 상관시키는 데이터가 이용 가능하다(그리고 물고기 중량 데이터 저장소(216)에 저장될 수 있다). 따라서, 물고기 중량 데이터 저장소(216)에 문의하기 위해 절차 블록(312)에서 결정된 물고기의 길이 및/또는 높이를 사용함으로써, 물고기의 중량이 결정될 수 있다. 이미지 및 세그멘테이션 마스크에 기초하여 물고기의 적어도 하나의 치수를 획득하기 위한 임의의 적합한 기술이 사용될 수 있다. 이러한 기술의 하나의 비-제한적인 예가 도 6에 도시되어 있고 아래에서 더 상세히 논의된다.
블록(316)에서, 물고기 측정 엔진(222)은 수중 카메라 시스템(106)의 물고기 측정 데이터 저장소(214)에 물고기의 중량을 추가한다. 일부 실시예들에서, 물고기 측정 엔진(222)은 또한 물고기의 측정된 치수들을 물고기 측정 데이터 저장소(214)에 저장할 수 있다.
방법(300)은 결정 블록(318)으로 진행하고, 여기서 물고기의 충분한 측정치가 물고기 측정 데이터 저장소(214)에 추가되었는지에 관한 결정이 이루어진다. 일부 실시예들에서, 물고기 측정 데이터 저장소(214)에 추가된 물고기들의 측정들의 총 수는 측정들의 임계 수와 비교될 수 있다. 일부 실시예들에서, 신뢰 구간이 구성될 수 있고, 신뢰 구간은 측정들의 임계 수를 결정하기 위해 사용될 수 있다. 예를 들어, 물고기 펜(104)이 40,000마리의 물고기를 포함하는 것으로 알려진 경우, 95% 신뢰 구간을 사용하도록 수중 카메라 시스템(106)을 구성하는 것은 약 381마리의 물고기 측정치가 수집되어 펜 내의 모든 물고기의 실제 평균 중량이 샘플의 평균의 5% 이내임을 보장해야 한다는 것을 의미할 것이다.
물고기 펜(104) 내의 물고기의 통계적으로 적절한 샘플을 구성하기 위해 더 많은 측정이 필요한 경우, 결정 블록(318)의 결과는 '아니오'이고, 방법(300)은 블록(302)으로 복귀하여 물고기의 또 다른 이미지를 캡처한다. 그렇지 않고, 충분한 측정치가 물고기 측정 데이터 저장소(214)에 저장되었다면, 결정 블록(318)의 결과는 '네'이고, 방법(300)은 블록(320)으로 진행한다.
블록(320)에서, 물고기 측정 엔진(222)은 물고기 바이오매스를 결정하기 위해 물고기 측정 데이터 저장소(214)에 저장된 중량을 사용한다. 일부 실시예들에서, 물고기 측정 엔진(222)은 저장된 물고기 측정치들의 평균을 결정할 수 있고, 전체 물고기 바이오매스를 결정하기 위해 그 평균을 물고기 펜(104) 내의 물고기의 모집단과 곱할 수 있다. 일부 실시예들에서, 물고기 측정 엔진(222)은, 물고기 펜(104)에 추가되는 것으로 카운트된 물고기의 초기 수에 기초하여 물고기 펜(104) 내 물고기의 인구를 결정하고, 죽은 것으로 알려진 물고기의 카운트를 반영하는 사망률 카운트를 빼고, 및 검출되지 않은 수단(외부 포식(external predation)을 포함하지만 이에 제한되지 않음)에 의해 물고기 펜(104)으로부터 제거된 물고기의 카운트를 반영하는 추정된 수축 카운트를 뺄 수 있다. 일부 실시예들에서, 물고기 측정 엔진(222)은 저장된 물고기 측정치들 자체의 평균을 결정된 물고기 바이오매스로서 사용할 수 있다.
방법(300)은 종료 블록으로 진행하여 종료된다. 도 3은 이 시점에서 중단하는 것으로 방법(300)을 도시하지만, 일부 실시예에서, 방법(300)은 임의의 목적을 위해 결정된 총 물고기 바이오매스를 계속 사용할 수 있다. 예를 들어, 일부 실시예들에서, 물고기 측정 엔진(222)은 전체 물고기 바이오매스를 수산 양식 관리 컴퓨팅 장치(102)에 전송할 수 있고, 그 후 전체 물고기 바이오매스를 사용자에게 제시할 수 있다. 일부 실시예들에서, 물고기 측정 엔진(222)은 전체 물고기 바이오매스를 수산 양식 관리 컴퓨팅 장치(102)에 전송할 수 있고, 그 후 자동화된 먹이 장치를 제어하기 위해 전체 물고기 바이오매스를 사용할 수 있다. 다른 예로서, 물고기 측정 엔진(222)은 저장된 물고기 측정치들의 평균을 유사한 목적들을 위해 사용될 수 있다.
일부 실시예에서, 수산 양식 관리 컴퓨팅 장치(102)는 시간에 따른 물고기 바이오매스의 변화 속도를 측정할 수 있고, 변화 속도는 물고기 공급 장치를 제어하는데 사용될 수 있다. 일부 실시예에서, 바이오매스 추정 및 성장 속도에 대한 경향은 물고기 펜(104) 내의 집단에 대한 먹이 펠릿 크기 및/또는 먹이의 유형을 선택하는 데 사용될 수 있다. 바이오매스 추정 및 성장 속도에 대한 경향은 또한 총 먹이량, 먹이 전달 스타일, 먹이 속도 및/또는 먹이 시간을 설정하는데 사용될 수 있다. 일부 실시예에서, 바이오매스 추정치 및/또는 시간에 따른 전체 물고기 바이오매스의 변화율은 자동화 공급 장치를 제어하기 위한 피드백 루프 메커니즘(feedback loop mechanism)에 대한 입력일 수 있다. 피드백 루프 메커니즘에 대한 다른 입력은 수온 및 수압(표면 아래의 거리)과 같은 환경 데이터의 세트 중 하나 이상을 포함할 수 있다. 피드백 루프 메커니즘의 출력은 주어진 날에 먹이 전달을 위한 가다/가지 않다를 나타낼 수 있다.
도 4는 본 개시내용의 다양한 양태들에 따라 이미지에서 세그멘테이션 마스크와 연관된 물고기의 측정 가능성을 결정하기 위한 절차의 비-제한적인 예시적인 실시예를 예시하는 흐름도이다. 절차(400)는 도 3의 절차 블록(308)에서 사용하기에 적합한 절차의 비-제한적인 예이다. 3. 일반적으로, 절차(400)는 부정확한 물고기 중량 추정치를 초래할 가능성이 있는 이미지가 무시되게 하는 이미지 품질 추정 파이프라인을 제공한다. 일부 실시예들에서, 절차(400)는 위에서 논의된 바와 같이 물고기를 포함하도록 이미지 분석 엔진(220)에 의해 결정된 이미지의 크로핑된 부분에 대해 동작한다. 일부 실시예들에서, 절차(400)는 또한 분석될 물고기와 연관된 이미지의 픽셀들을 나타내는 세그멘테이션 마스크 정보를 수신할 수 있다. 전술한 바와 같이, 이미지는 입체 카메라(202)에 의해 캡처되기 때문에, 이미지는 각각의 픽셀에 대한 컬러 정보 및 깊이 정보 모두를 포함한다.
개시 블록으로부터, 절차(400)는 블록(402)으로 진행하고, 여기서 이미지 분석 엔진(220)은 물고기의 이미지와 연관된 흐릿함의 양을 결정한다. 흐릿함은 라플라시안(Laplacian)의 변화를 결정하는 것, 고속 푸리에 변환(Fast Fourier Transform)을 계산하는 것 및 높은 주파수 및 낮은 주파수의 분포를 검사하는 것, 흐릿하고 흐릿하지 않은 이미지에 대해 트레이닝된 머신 러닝 모델, 또는 임의의 다른 적절한 기술을 포함하지만 이에 제한되지 않는 임의의 적절한 기술을 사용하여 검출될 수 있다.
절차(400)는 결정 블록(404)으로 진행하고, 여기서 이미지 분석 엔진(220)에 의해 결정된 흐릿함의 양에 기초하여 결정이 이루어진다. 일부 실시예들에서, 결정은 흐릿함의 양을 사용된 흐릿함 검출 기술에 의존하는 미리 결정된 흐릿함의 임계 량과 비교함으로써 이루어질 수 있다.
흐릿함의 양과 흐릿함의 미리 결정된 임계 량의 비교가, 물고기의 이미지가 너무 흐릿하다는 것을 나타내면, 결정 블록(404)의 결과는 '네'이고, 절차(400)는 블록(418)으로 진행한다. 그렇지 않고, 흐릿함의 양과 흐릿함의 미리 결정된 임계 량의 비교가 물고기의 이미지가 너무 흐릿하다는 것을 나타내지 않으면, 결정 블록(404)의 결과는 '아니오'이고, 절차(400)는 블록(406)으로 진행한다.
블록(406)에서, 이미지 분석 엔진(220)은 형상 분석 필터를 사용하여 세그멘테이션 마스크를 처리한다. 일부 실시예들에서, 형상 분석 필터는 세그멘테이션 마스크의 형상으로부터 피처들을 추출하고, 이들 피처들을 공지된 양호한 세그멘테이션 마스크들의 트레이닝 세트로부터 추출된 피처들과 비교하도록 트레이닝된다. 일부 실시예들에서, 제르니케 모멘트(Zernike moment)의 세트가 세그멘테이션 마스크에 대해 결정될 수 있다. 제르니케 모멘트는 서로 직교하는 특징을 포함함으로써, 정보의 중복을 최소화할 수 있다. 제르니케 모멘트에 기초한 특징들은 또한 병진 및 스케일 불변이고, 따라서 엄격한 형상 매칭 기준을 제공한다. 일부 실시예들에서, 세그멘테이션 마스크는 피처들을 추출하기 전에 세그먼테이션 마스크를 회전, 타이트한 크로핑(tight cropping), 및/또는 고정된 치수들로 리사이징함으로써 스케일 또는 병진 불변성을 제거하도록 표준화될 수 있다.
절차(400)는 결정 블록(408)으로 진행하고, 여기서 세그멘테이션 마스크로부터 추출된 특징들이 공지된 양호한 세그멘테이션 마스크들로부터 추출된 특징들과 충분히 유사하다고 형상 분석 필터가 결정하였는지 여부에 기초하여 결정이 이루어진다. 세그멘테이션 마스크가 충분히 유사하지 않다고 형상 분석 필터가 결정하면, 결정 블록(408)의 결과는 '네'이고, 절차(400)는 블록(418)으로 진행한다. 그렇지 않고, 세그멘테이션 마스크가 공지된 양호한 세그멘테이션 마스크 형상들과 유사한 형상을 갖는다고 형상 분석 필터가 결정하면, 결정 블록(408)의 결과는 '아니오'이고, 절차(400)는 블록(410)으로 진행한다.
물고기 펜(104) 내의 물고기를 감시하기 위해 카메라를 사용하는 것에 있어서의 하나의 공통적인 문제점은, 물고기가 성장하고 물고기 펜(104)을 모여들기 시작할 때, 다른 물고기에 의해 가려진 하나의 물고기의 공통적인 뷰가 점점 더 증가한다는 것이다. 도 5는 본 개시의 다양한 양태들에 따른, 가려진 세그멘테이션 마스크 및 이미지의 비-제한적인 예시적인 실시예, 뿐만 아니라 가려지지 않은 세그멘테이션 마스크 및 이미지의 비-제한적인 예시적인 실시예를 도시하는 이미지이다. 제1 이미지(502)에서, 가려지지 않은 물고기(508)가 그 전체 길이에서 카메라에 가시적이다. 따라서, 대응하는 가려지지 않은 세그멘테이션 마스크(506)는 전체 가려지지 않은 물고기(508)를 보여준다. 제2 이미지(504)에서, 가려진 물고기(512)의 일부가 카메라에 가시적이지만, 카메라에 더 가까운 가려진 물고기(514)는 가려진 물고기(512)의 전방 부분을 덮고 있는 지느러미를 갖는다. 따라서, 대응하는 가려진 세그멘테이션 마스크(510)에서 가려진 물고기(512)의 전방 부분에서 절단된다. 즉, 가려진 세그멘테이션 마스크(510)의 형상은 여전히 물고기형이어서, 가려짐에도 불구하고, 블록(406)에서 적용된 형상 분석 필터는 제2 이미지(504)가 측정 가능하지 않다고 결정하지 않았을 수 있다. 세그멘테이션 마스크가 측정에 적합하지 않게 하는 이미지 내의 가려짐을 검출하기 위해 추가적인 분석이 수행되어야 한다.
이를 위해, 도 4의 블록(410)으로 돌아가면, 이미지 분석 엔진(220)은 세그멘테이션 마스크 내부의 영역에서의 픽셀들의 평균 깊이를 결정하고, 블록(412)에서, 이미지 분석 엔진(220)은 세그멘테이션 마스크 외부의 영역에서의 픽셀들의 깊이들과 세그멘테이션 마스크 내부의 영역 내의 픽셀들의 평균 깊이를 비교한다. 도 5에 도시된 바와 같이, 이미지 분석 엔진(220)은 세그멘테이션 마스크의 경계 외부의 미리 결정된 수의 픽셀들에서의 영역에서의 픽셀들의 평균 깊이를 결정할 수 있고, 세그멘테이션 마스크의 경계 내부의 (또는 전체 세그멘테이션 마스크 내의) 미리 결정된 수의 픽셀들에서의 영역에서의 픽셀들의 평균 깊이를 결정할 수 있다. 일부 실시예들에서, 이미지 분석 엔진(220)은 먼저 세그멘테이션 마스크를 슬라이스들로(예를 들어, 수직, 수평, 또는 방사상 슬라이스들로) 분할할 수 있고, 각각의 슬라이스 내의 세그멘테이션 마스크의 경계의 내부 및 외부의 픽셀들의 평균 깊이들을 개별적으로 결정할 수 있다. 이어서, 이미지 분석 엔진(220)은 외부 부분의 픽셀들의 평균 깊이를 내부 부분의 픽셀들의 평균 깊이와 비교한다. 물고기가 가려지지 않으면, 외부 부분(또는 모든 슬라이스에 대한 외부 부분)에서의 픽셀의 평균 깊이는 내부 부분에서의 픽셀의 평균 깊이보다 클 것이다. 그러나, 물고기가 가려지면, 외부 부분(또는 적어도 하나의 슬라이스에 대한 외부 부분)에서의 픽셀들의 평균 깊이는 내측 부분에서의 픽셀들의 평균 깊이보다 클 것이고, 이는 물고기보다 카메라에 더 가까운 물체가 존재함을 의미한다. 도 5에서, 제1 이미지(502) 내의 가려지지 않은 물고기(508)에 대한 세그멘테이션 마스크를 둘러싸는 모든 픽셀들은 세그멘테이션 마스크 내의 픽셀들보다 더 큰 깊이를 가질 것인 반면, 가려진 물고기(512)의 전방 부분의 슬라이스에서 가려진 물고기(512)에 대한 세그멘테이션 마스크를 둘러싸는 픽셀들은 세그멘테이션 마스크 내의 픽셀들보다 더 작은 깊이를 가질 것이며, 따라서 가려진 물고기(514)의 존재를 표시한다.
절차(400)는 결정 블록(414)으로 진행하고, 여기서 블록(412)에서 수행된 비교는 세그멘테이션 마스크에 의해 식별된 객체가 가려졌는지 결정하는데 사용된다. 비교가 객체가 가려짐 나타내면, 결정 블록(414)의 결과는 '네'이고, 절차(400)는 블록(418)으로 진행한다. 블록(418)은 물고기의 이미지가 측정에 적합하지 않음을 나타내는 각각의 결정 블록 결과의 타겟이다. 따라서, 블록(418)에서, 이미지 분석 엔진(220)은 물고기가 측정 가능하지 않다고 결정한다. 그 다음, 절차(400)는 종료 블록으로 진행하여 종료된다.
결정 블록(414)으로 돌아가서, 만약 비교가 객체가 가려지지 않음을 표시하면, 결정 블록(414)의 결과는 '아니오'이고, 절차(400)는 블록(416)으로 진행한다. 블록(416)에서, 물고기의 이미지에 대한 모든 테스트가 수행되었고 테스트 중 어느 것도 이미지 내의 물고기가 측정 가능하지 않음을 나타내지 않았다. 따라서, 블록(416)에서, 이미지 분석 엔진(220)은 물고기가 측정 가능하다고 결정한다. 이어서, 절차(400)는 종료 블록으로 진행하여 종료된다.
종료시에, 절차(400)는 물고기가 그의 호출자에게 측정 가능한지 여부의 결정을 제공한다.
도 6은 본 개시의 다양한 양태에 따른 이미지 및 세그멘테이션 마스크에 기초하여 피시의 길이를 측정하기 위한 절차의 비-제한적인 예시적인 실시예를 도시하는 흐름도이다. 절차(600)는 도 3의 절차 블록(312)에서 사용하기에 적합한 기술의 예이며, 여기서 길이는 결정될 적어도 하나의 치수이다.
개시 블록으로부터, 절차(600)는 블록(602)으로 진행하고, 여기서 이미지 분석 엔진(220)은 세그멘테이션 마스크의 축을 따라 픽셀들을 슬라이스들로 분리한다. 예를 들어, 이미지 분석 엔진(220)은 세그멘테이션 마스크를 주어진 수의 픽셀 폭인 슬라이스들로 분리할 수 있다. 픽셀들의 수는 계산의 속도와 미세 정확도 사이의 트레이드 오프들(trade offs)을 관리하기 위해 구성 가능할 수 있다. 비-제한적인 예로서, 일부 실시예들에서, 이미지 분석 엔진(220)은 세그멘테이션 마스크를 10 픽셀 폭인 슬라이스들로 분리할 수 있지만, 임의의 다른 적절한 수의 픽셀들이 사용될 수 있다.
블록(604)에서, 이미지 분석 엔진(220)은 각각의 슬라이스에 대한 깊이 값을 결정한다. 일부 실시예들에서, 이미지 분석 엔진(220)은 각각의 슬라이스 내의 픽셀들의 평균 깊이를 결정할 수 있고, 평균 깊이를 슬라이스의 깊이로서 사용할 수 있다. 일부 실시예들에서, 이미지 분석 엔진(220)은 각각의 슬라이스의 중간점에서 픽셀의 깊이를 결정할 수 있고, 중간점 픽셀의 깊이를 슬라이스의 깊이로서 사용할 수 있다. 일부 실시예들에서, 이미지 분석 엔진(220)은 각각의 슬라이스의 각각의 경계에서 픽셀들의 깊이를 결정할 수 있다.
블록(606)에서, 이미지 분석 엔진(220)은 슬라이스들에 대한 깊이 값들에 기초하여 물고기의 곡선 표현을 생성한다. 즉, 일부 실시예들에서, 이미지 분석 엔진(220)은 카메라에 대한 3차원 공간에서의 슬라이스들 각각에 대한 위치들을 결정할 수 있다.
블록(608)에서, 이미지 분석 엔진(220)은 핀홀 모델을 사용하여 곡선 표현의 길이를 결정한다. 즉, 이미지 및 깊이 값들은, 이미지를 캡처한 카메라가 핀홀 카메라인 것과 같이 처리될 수 있고, 이미지 분석 엔진(220)은 물고기의 곡선 표현의 3차원 공간에서의 실제 길이를 계산하기 위해, 각 슬라이스의 수평 폭과 함께 카메라로부터의 각 슬라이스의 거리들을 사용할 수 있다. 일부 실시예들에서, 이미지 분석 엔진(220)은 또한 그 핀홀 모델의 일부로서 수중 굴절을 보상할 수 있다.
절차(600)는 종료 블록으로 진행하여 종료한다. 종료 시, 절차(400)는 물고기의 길이의 그 결정을 절차의 호출자에게 제공한다. 유사한 기술들이 수평이 아닌 수직 방향으로 공정을 재배향함으로써 물고기의 높이를 결정하는 데 사용될 수 있다는 것을 이해할 것이다.
도 7은 본 개시의 다양한 양태에 따른 적어도 하나의 물고기 모니터링 분석 값을 결정하는 방법의 비-제한적인 예시적인 실시예를 도시하는 흐름도이다. 물고기의 치수를 측정하고 물고기의 중량 및 바이오매스 총량을 결정하기 위해 치수를 사용하는 것에 더하여, 수중 카메라 시스템(106)에 의해 캡처된 고품질 이미지는 물고기 펜(104)의 관리를 위한 다른 분석 값을 결정하는 능력을 제공한다.
개시 블록으로부터, 방법(700)은 수중 카메라 시스템(106)의 컴퓨팅 장치(206)의 이미지 분석 엔진(220)이 수중 카메라 시스템(106)의 입체 카메라(202)에 의해 캡처된 이미지에서 물고기를 검출하는 블록(702)로 진행한다. 일부 실시예들에서, 이미지 분석 엔진(220)은 이미지에서 물고기를 검출하기 위해 컨볼루션 신경망을 포함하지만 이에 제한되지 않는 머신 러닝 모델 데이터 저장소(218)에 저장된 머신 러닝 모델을 사용할 수 있다. 상기와 같이, 입체 카메라(202)가 촬영하는 영상은 픽셀별로 컬러 정보와 깊이 정보를 모두 포함할 수 있다. 일부 실시예들에서, 방법(700)은 적어도 하나의 이미지가 분석에 적절한지 여부를 결정하기 위해 절차(400)와 같은 기술을 사용할 수 있지만, 이러한 단계들은 도 7에 도시되지 않는다.
블록(704)에서, 이미지 분석 엔진(220)은 이미지 내의 깊이 정보에 기초하여 물고기 및 수중 카메라 시스템(106)의 가변 초점 렌즈 카메라(204) 사이의 거리를 결정한다. 일부 실시예들에서, 이미지 분석 엔진(220)은 입체 카메라(202) 및 가변 초점 렌즈 카메라(204)의 상대 위치를 알고, 물고기와 가변 초점 렌즈 카메라(204) 사이의 거리를 결정하기 위해 (입체 카메라(202)와 물고기 사이의 거리를 나타내는) 이미지 내의 깊이 정보와 함께 이 상대 위치를 사용한다. 일부 실시예들에서, 가변 초점 렌즈 카메라(204)는, 이미지 내의 깊이 정보가 추가 처리 없이 가변 초점 렌즈 카메라(204)와 물고기 사이의 거리로서 사용될 수 있도록, 입체 카메라(202)의 렌즈들 사이를 포함하지만 이에 제한되지 않는 방식으로 위치된다.
선택적인 블록(706)에서, 이미지 분석 엔진(220)은 물고기의 현재 위치 및 물고기의 움직임 행동에 기초하여 물고기의 미래 위치를 예측한다. 일부 실시예들에서, 이미지 분석 엔진(220)은 물고기의 운동 및/또는 배향을 결정하기 위해 물고기의 이미지 또는 다수의 연속적인 이미지들에서 물고기의 운동 및/또는 배향의 표시들을 사용할 수 있다. 일부 실시예들에서, 느리게 움직이는 물고기의 단일 이미지가 분석될 수 있고, 물고기의 예측된 운동은 분석을 위해 중요하지 않을 수 있기 때문에, 이 블록은 선택적인 것으로 예시되고 설명된다.
블록(708)에서, 이미지 분석 엔진(220)은 가변 초점 렌즈 카메라(204)의 초점을 조정한다. 일부 실시예들에서, 이미지 분석 엔진(220)은 블록(704)으로부터의 깊이 정보(또는 프로세싱된 깊이 정보)를 매칭시키기 위해 가변 초점 렌즈 카메라(204)의 초점을 조정할 수 있다. 일부 실시예들에서, 이미지 분석 엔진(220)은 물고기의 예측된 운동을 따르도록 가변 초점 렌즈 카메라(204)의 초점을 조정할 수 있다. 일부 이러한 실시예들에서, 이미지 분석 엔진(220)은 입체 카메라(202)로부터의 깊이 정보를 지속적으로 측정하고 물고기의 예측된 움직임에 기초하여 가변 초점 렌즈 카메라(204)의 초점을 지속적으로 조정할 수 있다. 일부 실시예들에서, 물고기의 예측된 운동은 물고기 운동을 나타내는 벡터, 물고기의 배향, 및 물고기의 신체 움직임 중 하나 이상을 포함할 수 있다.
블록(710)에서, 이미지 분석 엔진(220)은 가변 초점 렌즈 카메라(204)를 사용하여 물고기의 포커싱된 이미지를 캡처하고, 블록(712)에서, 이미지 분석 엔진(220)은 포커싱된 이미지에 적어도 부분적으로 기초하여 적어도 하나의 물고기 모니터링 분석 값을 결정한다. 상기 가변 초점 렌즈 카메라(204)의 초점을 조절하여 물고기의 초점 이미지를 촬영하였기 때문에, 물고기의 고해상도 뷰를 얻을 수 있으며, 이로부터 물고기의 상태에 대한 상세한 분석이 결정될 수 있다.
포커싱된 이미지 및 예측된 운동에 기초하여 결정될 수 있는 물고기 모니터링 분석 값의 일례는 피부 상태, 바다물이(sea lice) 또는 아메바 질(amoebal gill) 질병의 존재 또는 부재이다. 물고기 상에 가변 초점 렌즈 카메라(204)를 포커싱하는 것은 물고기의 피부의 고해상도 이미지가 캡처될 수 있게 하기 때문에, 이들 상태들은, 이에 제한되지 않지만, 바다물이, 피부 상태들, 또는 아메바 질 질병의 징후들을 검출하도록 훈련된 머신 러닝 모델을 포함하는 임의의 적합한 기술을 사용하여 포커싱된 이미지로부터 물고기 상에서 식별될 수 있다.
방법(700)은 종료 블록으로 진행하여 종료된다. 도 7은 이 시점에서 종료하는 방법(700)을 도시하지만, 일부 실시예들에서, 물고기 모니터링 분석 값은 물고기 펜(104)의 동작을 제어하는 데 사용될 수 있다. 예를 들어, 일부 실시예들에서, 물고기 모니터링 분석 값은 사용자에게 제시하기 위해 수산 양식 관리 컴퓨팅 장치(102)로 전송되어 사용자가 동작을 취할 수 있다. 다른 예로서, 일부 실시예들에서, 물고기 모니터링 분석 값은 물고기 펜(104)의 기능을 자동으로 제어하기 위해 수산 양식 관리 컴퓨팅 장치(102)에 의해 사용될 수 있다. 예를 들어, 바다물이가 검출되면, H202의 분배, 바다물이를 예방하기 위한 먹이에 첨가제를 제공하는 것, 또는 바다물이를 먹는 다른 물고기의 도입과 같은 바다물이에 대한 처리가 제공될 수 있다.
도 8은 본 개시의 다양한 양태에 따른 적어도 하나의 물고기 모니터링 분석 값을 결정하는 방법의 비-제한적인 예시적인 실시예를 도시하는 흐름도이다. 일부 물고기 모니터링 분석 값은 포커스된 이미지가 획득되지 않더라도 물고기의 움직임 행동에 기초하여 결정될 수 있다.
개시 블록으로부터, 방법(800)은 수중 카메라 시스템(106)의 컴퓨팅 장치(206)의 이미지 분석 엔진(220)이 수중 카메라 시스템(106)의 카메라에 의해 캡처된 적어도 하나의 이미지에서 물고기를 검출하는 블록(802)으로 진행한다. 일부 실시예들에서, 이미지 분석 엔진(220)은 이미지에서 물고기를 검출하기 위해 컨볼루션 신경망을 포함하지만 이에 제한되지 않는 머신 러닝 모델 데이터 저장소(218)에 저장된 머신 러닝 모델을 사용할 수 있다. 이미지 분석 엔진(220)은 입체 카메라(202) 또는 가변 초점 렌즈 카메라(204)에 의해 캡처된 하나 이상의 이미지를 사용할 수 있다. 일부 실시예들에서, 방법(800)은 적어도 하나의 이미지가 분석에 적절한지 여부를 결정하기 위해 절차(400)와 같은 기술을 사용할 수 있지만, 이러한 단계들은 도 8에 도시되지 않는다.
블록(804)에서, 이미지 분석 엔진(220)은 물고기의 운동 거동을 결정한다. 운동 거동은 물고기의 벡터 및/또는 배향을 포함할 수 있다. 일부 실시예들에서, 이미지 분석 엔진(220)은 물고기의 운동 및/또는 배향을 결정하기 위해 물고기의 이미지 또는 다수의 연속적인 이미지들에서 물고기의 운동 및/또는 배향의 표시들을 사용할 수 있다.
블록(806)에서, 이미지 분석 엔진(220)은 물고기의 운동 거동에 적어도 부분적으로 기초하여 적어도 하나의 물고기 모니터링 분석 값을 결정한다.
동작 거동에 기초하여 결정될 수 있는 물고기 모니터링 분석 값의 한 예는 트레마토드(trematode) 감염의 존재 또는 부재이다. 일부 어종의 물고기에서, 트레마토드 감염은 물고기가 헤엄치는 동안 어선이 그물 또는 밧줄과 같은 물고기 펜(104)의 구조물에 문지르도록 배향을 변화시키게 하고, 물고기가 거꾸로 헤엄치게 할 수 있다. 물고기의 역전된 배향 및/또는 물고기가 수중 구조물과 접촉하게 하는 운동을 검출하는 것은 트레마토이드 감염의 존재를 나타낼 수 있다.
동작 거동에 기초하여 결정될 수 있는 물고기 모니터링 분석 값의 다른 예는 송어 및 스틸헤드(steelhead)를 포함하지만 이에 제한되지 않는, 부레를 갖는 어종에서의 응력(stress)이다. 물고기가 수중 상태에 있고 부력을 조절하기 위해 공기로 수영 부레를 다시 채우기 위해 표면에 오지 못하는 경우에 수축된 부레가 일어날 수 있다. 운동 거동은 예측된 운동이 물고기가 옆으로 헤엄치고 있고/있거나 무기력한 징후를 보이는 것을 나타낼 때, 그들의 부력이 더 이상 그들의 부레에 의해 보상되지 않기 때문에 그러한 응력의 존재를 나타낼 수 있다.
동작 거동에 기초하여 결정될 수 있는 물고기 모니터링 분석 값의 또 다른 예는 물고기 포만감(fish satiation)이다. 일부 어종은 일단 포만하면 수영 패턴과 스쿨링 패턴을 바꾸는 것으로 알려져 있다. 따라서, 동작 거동은 물고기 모니터링 분석 값으로서 포만감을 결정하기 위해 포만감을 나타내는 알려진 수영 패턴 및 스쿨링 패턴과 비교될 수 있다.
방법(800)은 종료 블록으로 진행하여 종료된다. 도 8은 이 시점에서 종료하는 방법(800)을 도시하지만, 일부 실시예들에서, 물고기 모니터링 분석 값은 물고기 펜(104)의 동작을 제어하기 위해 사용될 수 있다. 예를 들어, 일부 실시예들에서, 물고기 모니터링 분석 값은 사용자에게 제시하기 위해 수산 양식 관리 컴퓨팅 장치(102)로 전송되어 사용자가 동작을 취할 수 있다. 다른 예로서, 일부 실시예들에서, 물고기 모니터링 분석 값은 물고기 펜(104)의 기능을 자동으로 제어하기 위해 수산 양식 관리 컴퓨팅 장치(102)에 의해 사용될 수 있다. 예를 들어, 트레마토드 감염이 검출되는 경우, H2O2 분배기는 감염을 다루는데 효과적인 시간, 예컨대 수 초 또는 분 동안 희석된 농도의 H2O2로 물고기 펜(104)을 목욕하도록 활성화될 수 있다. 다른 예로서, 부레 관련 스트레스가 검출되면, 수중 물고기 펜(104)은 물고기가 그들의 부레를 재충전할 수 있도록 표면으로 가져갈 수 있거나, 물고기 펜(104)이 잠긴 동안 제공되는 인공 기포의 기능이 검증되거나 활성화될 수 있다. 최종 예로서, 포만감 검출의 존재 또는 부재는 공급 분배기를 제어하는 데 사용될 수 있다.
도 9는 본 개시의 컴퓨팅 장치로서 사용하기에 적합한 예시적인 컴퓨팅 장치(900)의 양태를 도시하는 블록도이다. 다수의 상이한 타입의 컴퓨팅 장치들이 위에서 논의되었지만, 예시적인 컴퓨팅 장치(900)는 많은 상이한 타입의 컴퓨팅 장치에 공통인 다양한 구성들을 설명한다. 도 9는 네트워크 상의 장치로서 구현되는 컴퓨팅 장치를 참조하여 설명되지만, 아래의 설명은 서버들, 개인용 컴퓨터들, 모바일 폰들, 스마트 폰들, 태블릿 컴퓨터들, 임베디드 컴퓨팅 장치들, 및 본 개시내용의 실시예들의 부분들을 구현하는데 사용될 수 있는 다른 장치들에 적용 가능하다. 컴퓨팅 장치의 일부 실시예들은 ASIC, FPGA, 또는 다른 맞춤화된 장치에서 구현될 수 있거나 이를 포함할 수 있다. 또한, 당업자들 및 다른 사람들은 컴퓨팅 장치(900)가 임의의 수의 현재 이용 가능하거나 아직 개발되지 않은 장치들 중 임의의 하나일 수 있다는 것을 인식할 것이다.
가장 기본적인 구성에서, 컴퓨팅 장치(900)는 커뮤니케이션 버스(906)에 의해 연결된 적어도 하나의 프로세서(902) 및 시스템 메모리(904)를 포함한다. 장치의 정확한 구성 및 유형에 따라, 시스템 메모리(904)는 판독 전용 메모리("ROM"), 랜덤 액세스 메모리("RAM"), EEPROM, 플래시 메모리, 또는 유사한 메모리 기술과 같은 휘발성 또는 비휘발성 메모리일 수 있다. 당업자 및 다른 사람들은 시스템 메모리(904)가 전형적으로 프로세서(902)에 즉시 액세스 가능하고/하거나 그에 의해 현재 동작되고 있는 데이터 및/또는 프로그램 모듈들을 저장한다는 것을 인식할 것이다. 이와 관련하여, 프로세서(902)는 명령어들의 실행을 지원함으로써 컴퓨팅 장치(900)의 계산 센터로서 기능할 수 있다.
도 9에 더 도시된 바와 같이, 컴퓨팅 장치(900)는 네트워크를 통해 다른 장치와 통신하기 위한 하나 이상의 구성요소를 포함하는 네트워크 인터페이스(910)를 포함할 수 있다. 본 개시내용의 실시예들은 공통 네트워크 프로토콜들을 사용하여 통신들을 수행하기 위해 네트워크 인터페이스(910)를 이용하는 기본 서비스들에 액세스할 수 있다. 네트워크 인터페이스(910)는 또한 Wi-Fi, 2G, 3G, LTE, WiMAX, 블루투스, 블루투스 저에너지 등과 같은 하나 이상의 무선 통신 프로토콜들을 통해 통신하도록 구성된 무선 네트워크 인터페이스를 포함할 수 있다. 당업자에 의해 이해되는 바와 같이, 도 9에 예시된 네트워크 인터페이스(910)는 컴퓨팅 장치(900)의 특정 구성요소들과 관련하여 위에서 설명되고 예시된 하나 이상의 무선 인터페이스들 또는 물리적 통신 인터페이스들을 나타낼 수 있다.
도 9에 도시된 예시적인 실시예에서, 컴퓨팅 장치(900)는 또한 저장 매체(908)를 포함한다. 그러나, 서비스들은 데이터를 로컬 저장 매체에 유지하기 위한 수단을 포함하지 않는 컴퓨팅 장치를 사용하여 액세스될 수 있다. 따라서, 도 9에 도시된 저장 매체(908)는 저장 매체(908)가 선택적이라는 것을 나타내기 위해 점선으로 표현된다. 임의의 이벤트에서, 저장 매체(908)는 하드 드라이브, 솔리드 스테이트 드라이브, CD ROM, DVD, 또는 다른 디스크 저장소, 자기 카세트, 자기 테이프, 자기 디스크 저장소 등과 같은, 그러나 이에 제한되지 않는 정보를 저장할 수 있는 임의의 기술을 사용하여 구현되는 휘발성 또는 비휘발성, 착탈식 또는 비착탈식일 수 있다.
프로세서(902), 시스템 메모리(904), 커뮤니케이션 버스(906), 저장 매체(908), 및 네트워크 인터페이스(910)를 포함하는 컴퓨팅 장치들의 적합한 구현들이 알려져 있고 상업적으로 이용 가능하다. 예시의 용이함을 위해 그리고 청구된 청구물의 이해를 위해 중요하지 않기 때문에, 도 9는 많은 컴퓨팅 장치들의 전형적인 구성요소들 중 일부를 도시하지 않는다. 이와 관련하여, 컴퓨팅 장치(900)는 키보드, 키패드, 마우스, 마이크로폰, 터치 입력 장치, 터치 스크린, 태블릿 등과 같은 입력 장치들을 포함할 수 있다. 이러한 입력 장치들은 RF, 적외선, 직렬, 병렬, 블루투스, 블루투스 저에너지, USB, 또는 무선 또는 물리적 연결들을 사용하는 다른 적절한 연결 프로토콜들을 포함하는 유선 또는 무선 연결들에 의해 컴퓨팅 장치(900)에 결합될 수 있다. 유사하게, 컴퓨팅 장치(900)는 또한 디스플레이, 스피커들, 프린터 등과 같은 출력 장치들을 포함할 수 있다. 이들 장치는 당업계에 잘 알려져 있기 때문에, 본 명세서에서 추가로 예시되거나 설명되지 않는다.
Claims (6)
- 컴퓨팅 장치의 하나 이상의 프로세서들에 의한 실행에 응답하여, 상기 컴퓨팅 장치로 하여금 물고기 펜 내의 복수의 물고기를 모니터링하기 위한 동작들을 수행하게 하는 컴퓨터 실행가능 명령어들이 저장된 비-일시적 컴퓨터-판독가능 매체로서, 상기 동작은,
상기 컴퓨팅 장치에 의해, 적어도 하나의 물고기를 묘사하는 수중 카메라 시스템에 의해 캡처된 이미지를 수신하는 단계;
상기 컴퓨팅 장치에 의해, 상기 적어도 하나의 물고기가 가려지는지 여부에 적어도 부분적으로 기초하여 상기 이미지 내 적어도 하나의 물고기의 측정 가능성을 결정하는 단계; 및
상기 이미지 내 적어도 하나의 물고기가 측정 가능하다는 결정에 응답하여, 상기 이미지에 기초하여 상기 적어도 하나의 물고기의 적어도 하나의 특성을 결정하는 단계를 포함하는,
비-일시적 컴퓨터-판독가능 매체. - 제1항에 있어서, 상기 적어도 하나의 물고기가 가려지는지 여부에 적어도 부분적으로 기초하여 상기 이미지 내 상기 적어도 하나의 물고기의 상기 측정 가능성을 결정하는 단계는,
상기 이미지 내 물고기에 대한 세그멘테이션 마스크를 결정하는 단계;
상기 세그멘테이션 마스크 내부의 영역 내의 픽셀들의 평균 깊이를 결정하는 단계;
상기 세그멘테이션 마스크 외부의 영역 내의 픽셀들의 깊이를 상기 세그멘테이션 마스크 내부의 상기 영역 내의 상기 픽셀들의 상기 평균 깊이와 비교하는 단계; 및
상기 세그멘테이션 마스크 외부의 상기 영역 내의 상기 픽셀들의 상기 깊이가 상기 세그멘테이션 마스크 내부의 상기 영역 내의 상기 픽셀들의 상기 평균 깊이보다 크다는 결정에 응답하여 물고기가 측정 가능하다고 결정하는 단계를 포함하는, 비-일시적 컴퓨터-판독가능 매체. - 제2항에 있어서,
상기 세그먼테이션 마스크 내부의 상기 영역 내의 상기 픽셀들은 상기 세그먼테이션 마스크의 에지로부터 제1 임계 거리 내의 픽셀들의 세트를 포함하고, 상기 세그먼테이션 마스크 외부의 상기 영역 내의 상기 픽셀들은 상기 세그먼테이션 마스크의 상기 에지로부터 제2 임계 거리 내의 픽셀들의 세트를 포함하는, 비-일시적 컴퓨터-판독가능 매체. - 제1항에 있어서,
상기 이미지 내의 상기 적어도 하나의 물고기의 상기 측정 가능성을 결정하는 단계는, 상기 이미지 내의 흐릿함의 양 및 상기 이미지에 대한 형상 분석의 적용에 더 부분적으로 기초하는, 비-일시적 컴퓨터-판독가능 매체. - 제1항에 있어서,
상기 이미지에 기초하여 상기 적어도 하나의 물고기의 상기 적어도 하나의 특성을 결정하는 단계는, 적어도 하나의 물고기의 적어도 하나의 치수를 측정하는 단계, 적어도 하나의 물고기의 거동을 결정하는 단계, 적어도 하나의 물고기의 중량을 결정하는 단계, 및 적어도 하나의 물고기의 건강 상태를 결정하는 단계 중 적어도 하나를 포함하는, 비-일시적 컴퓨터-판독가능 매체. - 제5항에 있어서,
적어도 하나의 물고기의 상기 적어도 하나의 치수를 측정하는 단계는,
상기 이미지 내 물고기에 대한 세그멘테이션 마스크를 결정하는 단계;
상기 세그멘테이션 마스크의 축을 따라 픽셀들을 슬라이스들로 분리하는 단계;
상기 슬라이스들의 각각의 슬라이스의 깊이 값을 결정하는 단계; 및
상기 이미지 상에 핀홀 모델을 사용하여 3D 표현에서 상기 마스크의 길이를 결정하는 단계를 포함하는, 비-일시적 컴퓨터-판독가능 매체.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/854,682 | 2020-04-21 | ||
US16/854,682 US11170209B1 (en) | 2020-04-21 | 2020-04-21 | Systems and methods for fish volume estimation, weight estimation, and analytic value generation |
PCT/US2021/027392 WO2021216343A1 (en) | 2020-04-21 | 2021-04-15 | Systems and methods for fish volume estimation, weight estimation, and analytic value generation |
KR1020227039967A KR20230005874A (ko) | 2020-04-21 | 2021-04-15 | 물고기 부피 추정, 중량 추정, 및 분석 값 생성을 위한 시스템 및 방법 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227039967A Division KR20230005874A (ko) | 2020-04-21 | 2021-04-15 | 물고기 부피 추정, 중량 추정, 및 분석 값 생성을 위한 시스템 및 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240053658A true KR20240053658A (ko) | 2024-04-24 |
Family
ID=78080718
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020247011928A KR20240053658A (ko) | 2020-04-21 | 2021-04-15 | 물고기 부피 추정, 중량 추정, 및 분석 값 생성을 위한 시스템 및 방법 |
KR1020227039967A KR20230005874A (ko) | 2020-04-21 | 2021-04-15 | 물고기 부피 추정, 중량 추정, 및 분석 값 생성을 위한 시스템 및 방법 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227039967A KR20230005874A (ko) | 2020-04-21 | 2021-04-15 | 물고기 부피 추정, 중량 추정, 및 분석 값 생성을 위한 시스템 및 방법 |
Country Status (11)
Country | Link |
---|---|
US (1) | US11170209B1 (ko) |
EP (1) | EP4139837A4 (ko) |
JP (1) | JP2023523700A (ko) |
KR (2) | KR20240053658A (ko) |
AU (1) | AU2021261234A1 (ko) |
CA (1) | CA3179956A1 (ko) |
CL (2) | CL2022002873A1 (ko) |
EC (1) | ECSP22081726A (ko) |
MX (1) | MX2022012961A (ko) |
NZ (1) | NZ792826A (ko) |
WO (1) | WO2021216343A1 (ko) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2019311094A1 (en) | 2018-07-24 | 2021-02-11 | Running Tide Technologies, Inc. | System and method for the cultivation of aquatic animals |
WO2021065265A1 (ja) * | 2019-09-30 | 2021-04-08 | 日本電気株式会社 | 大きさ推定装置、大きさ推定方法および記憶媒体 |
US11688154B2 (en) * | 2020-05-28 | 2023-06-27 | X Development Llc | Analysis and sorting in aquaculture |
US20220000079A1 (en) * | 2020-07-06 | 2022-01-06 | Ecto, Inc. | Acoustics augmentation for monocular depth estimation |
WO2022076542A1 (en) * | 2020-10-07 | 2022-04-14 | Forever Oceans Corporation | Autonomous real-time feed optimization and biomass estimation in aquaculture systems |
AU2021422850A1 (en) * | 2021-01-29 | 2023-08-17 | Running Tide Technologies, Inc. | System and method for grading and counting aquatic animals |
US11864536B2 (en) * | 2021-05-14 | 2024-01-09 | X Development Llc | State-specific aquaculture feeder controller |
US20220400627A1 (en) * | 2021-06-18 | 2022-12-22 | Wan-Zhou YU | Intelligent cultivating system |
US20220408701A1 (en) * | 2021-06-25 | 2022-12-29 | X Development Llc | Automated feeding system for fish |
US20230077889A1 (en) * | 2021-09-15 | 2023-03-16 | Wan-Zhou YU | Automatic observing net and utilizing method thereof |
CN114485415A (zh) * | 2021-12-27 | 2022-05-13 | 中国水产科学研究院黄海水产研究所 | 一种底栖鱼类生长表型高效测量方法及装置 |
CN114612397A (zh) * | 2022-03-02 | 2022-06-10 | 广东省农业科学院农业经济与信息研究所 | 鱼苗分选方法、系统、电子设备及存储介质 |
US20230360423A1 (en) * | 2022-05-04 | 2023-11-09 | X Development Llc | Underwater camera biomass distribution forecast |
CN114972895B (zh) * | 2022-08-01 | 2022-09-30 | 武汉轻工大学 | 小龙虾品质无损检测方法及装置 |
WO2024149842A1 (en) * | 2023-01-13 | 2024-07-18 | WINGS ICT Solutions Private Company | Automated system and method for estimating average fish weight in an aquaculture environment |
WO2024163344A1 (en) * | 2023-01-30 | 2024-08-08 | X Development Llc | End-to-end differentiable fin fish biomass model |
CN116843085B (zh) * | 2023-08-29 | 2023-12-01 | 深圳市明心数智科技有限公司 | 淡水鱼生长监控方法、装置、设备及存储介质 |
CN116935327B (zh) * | 2023-09-07 | 2023-12-22 | 深圳市明心数智科技有限公司 | 基于ai视觉的水产养殖监控方法、装置、设备及存储介质 |
CN117455927B (zh) * | 2023-12-21 | 2024-03-15 | 万灵帮桥医疗器械(广州)有限责任公司 | 光斑阵列分割与光斑偏移量计算方法、装置、设备及存储介质 |
CN118038259B (zh) * | 2024-04-10 | 2024-07-12 | 华南农业大学 | 鱼塘养殖鱼类死亡识别方法、系统、设备及介质 |
US12094119B1 (en) | 2024-04-17 | 2024-09-17 | Onwater Llc | Physical characteristics determination system and method(s) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9367930B2 (en) * | 2010-08-31 | 2016-06-14 | University Of Massachusetts | Methods and systems for determining fish catches |
GB2539495B (en) | 2015-06-19 | 2017-08-23 | Ace Aquatec Ltd | Improvements relating to time-of-flight cameras |
GB201710705D0 (en) | 2017-07-04 | 2017-08-16 | Optoscale As | Structured-Light Illumination |
US11825814B2 (en) | 2017-12-20 | 2023-11-28 | Intervet Inc. | System for external fish parasite monitoring in aquaculture |
US10599922B2 (en) * | 2018-01-25 | 2020-03-24 | X Development Llc | Fish biomass, shape, and size determination |
US10534967B2 (en) | 2018-05-03 | 2020-01-14 | X Development Llc | Fish measurement station keeping |
WO2019232247A1 (en) | 2018-06-01 | 2019-12-05 | Aquabyte, Inc. | Biomass estimation in an aquaculture environment |
WO2020046523A1 (en) * | 2018-08-27 | 2020-03-05 | Aquabyte, Inc. | Optimal feeding based on signals in an aquaculture environment |
-
2020
- 2020-04-21 US US16/854,682 patent/US11170209B1/en active Active
-
2021
- 2021-04-15 CA CA3179956A patent/CA3179956A1/en active Pending
- 2021-04-15 MX MX2022012961A patent/MX2022012961A/es unknown
- 2021-04-15 EP EP21792911.6A patent/EP4139837A4/en active Pending
- 2021-04-15 NZ NZ792826A patent/NZ792826A/en unknown
- 2021-04-15 KR KR1020247011928A patent/KR20240053658A/ko active Search and Examination
- 2021-04-15 KR KR1020227039967A patent/KR20230005874A/ko unknown
- 2021-04-15 WO PCT/US2021/027392 patent/WO2021216343A1/en unknown
- 2021-04-15 JP JP2022562421A patent/JP2023523700A/ja active Pending
- 2021-04-15 AU AU2021261234A patent/AU2021261234A1/en active Pending
-
2022
- 2022-10-18 CL CL2022002873A patent/CL2022002873A1/es unknown
- 2022-10-20 EC ECSENADI202281726A patent/ECSP22081726A/es unknown
-
2023
- 2023-05-09 CL CL2023001332A patent/CL2023001332A1/es unknown
Also Published As
Publication number | Publication date |
---|---|
CL2022002873A1 (es) | 2023-03-31 |
ECSP22081726A (es) | 2022-11-30 |
CA3179956A1 (en) | 2021-10-28 |
MX2022012961A (es) | 2023-01-11 |
WO2021216343A1 (en) | 2021-10-28 |
AU2021261234A1 (en) | 2022-10-20 |
US11170209B1 (en) | 2021-11-09 |
NZ792826A (en) | 2024-08-30 |
KR20230005874A (ko) | 2023-01-10 |
CL2023001332A1 (es) | 2023-09-29 |
EP4139837A1 (en) | 2023-03-01 |
JP2023523700A (ja) | 2023-06-07 |
EP4139837A4 (en) | 2024-05-15 |
US20210321593A1 (en) | 2021-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11170209B1 (en) | Systems and methods for fish volume estimation, weight estimation, and analytic value generation | |
Li et al. | Automatic counting methods in aquaculture: A review | |
US11688196B2 (en) | Fish biomass, shape, and size determination | |
US11475689B2 (en) | Fish biomass, shape, size, or health determination | |
Monkman et al. | Using machine vision to estimate fish length from images using regional convolutional neural networks | |
CN110426112B (zh) | 一种生猪体重测量方法及装置 | |
US12051231B2 (en) | Analysis and sorting in aquaculture | |
KR102234697B1 (ko) | 수중드론을 이용하는 어망감시장치, 및 그 장치의 제어방법 | |
US20240104900A1 (en) | Fish school detection method and system thereof, electronic device and storage medium | |
US20210368748A1 (en) | Analysis and sorting in aquaculture | |
CN115512215A (zh) | 水下生物监测方法、装置及存储介质 | |
Yu et al. | An intelligent measurement scheme for basic characters of fish in smart aquaculture | |
Ivashchuk et al. | Neural network methods for the detection of farm animals in dense dynamic groups on images | |
CN112587089B (zh) | 基于人工智能的妊娠检测方法、装置、计算机设备和介质 | |
Wang et al. | Deep learning method for rapidly estimating pig body size | |
Chen et al. | Automatic counting methods in aquaculture: A review | |
WO2024205983A1 (en) | Biomass estimation using monocular underwater cameras | |
CN115995038A (zh) | 一种水下目标数量估计方法及相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination |