Program, management device, and system

A deep learning-based system for object detection and foreground segmentation automates anomaly detection in environments, addressing the challenge of manual effort by classifying anomalies as additive or subtractive, enhancing efficiency and accuracy.

JP7618973B2Active Publication Date: 2025-01-22FUJIFILM BUSINESS INNOVATION CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2020120215
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2019-12-11
Filing Date
2020-07-13
Publication Date
2025-01-22
Estimated Expiration
2040-07-13

AI Technical Summary

Technical Problem

Detecting anomalies in specific environments from images and videos is challenging, requiring significant manual effort due to difficulties in identifying previously invisible objects, classifying objects as abnormal or non-anomalous, and detecting missing objects.

Method used

A combination of object detection and foreground segmentation models with a multi-stage system to identify regions of interest, followed by anomaly detection using a deep learning-based approach, classifying anomalies as additive or subtractive.

Benefits of technology

Automates the detection of anomalies, reducing manual effort and accurately identifying unknown or missing objects in environments, enabling real-time adaptation and classification of objects.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007618973000001
    Figure 0007618973000001
  • Figure 0007618973000002
    Figure 0007618973000002
  • Figure 0007618973000003
    Figure 0007618973000003
Patent Text Reader

Abstract

To substantially reduce manual labor in abnormality detection in a specific environment.SOLUTION: A technique according to the present disclosure is directed for a system and a method for abnormality detection by using a segmentation process and an object detection process on an image received via a camera system. The segmentation process and the object detection process are matched with a detected additive abnormality (for example, an object added to an environment) and subtractive abnormality (for example, an object missing from the environment). Notification can be sent to a user of the environment or a manager of a system based on a type of the detected abnormality and a potential object.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates generally to object detection, and more specifically to a program, management device, and system for detecting abnormal or missing objects in an environment. [Background technology]

[0002] The problem of detecting unknown and / or missing objects in a particular environment presents several challenges. In real-world applications of various related technologies, monitoring of environmental changes is mostly performed manually, since it may be difficult for an automated system to determine whether an environmental change is valid or not. Such a task is very time-consuming and therefore expensive. Automatic detection of anomalies can help to significantly reduce the manual effort in such a task.

[0003] Such a system would need to be able to distinguish between objects that are typical, i.e., expected, in a particular environment (hereafter abbreviated as "expected objects") from objects that are unusual, i.e., unexpected, in a particular environment. In the related art, there are systems that include anomaly detection in hyperspectral images and systems that include anomaly detection in crowded scenes. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] U.S. Patent No. 7,613,668 [Patent Document 2] International Publication No. 2013 / 062738 [Non-patent literature]

[0005] [Non-Patent Document 1] DENG,J.et al."ImageNet:A Large-Scale Hierarchical Image Database"In CVPR09,2009,8 pages. [Non-Patent Document 2] FARNOOSH,A.et al. "DEEPBM: DEEP PROBABILISTIC BACKGROUND MODEL ESTIMATION FROM VIDEO SEQUENCES" CoRP,2019,5 pages. [Non-Patent Document 3] KHAZAI,S.et al."Anomaly Detection in Hyperspectral Images Based on an Adaptive Support Vector Method" IEEE GEOSCIENCE AND REMOTE SENSING LETTERS, July 2011,pp.646-650,VOL.8, NO.4. [Non-Patent Document 4] LI,W.et al."Anomaly Detection and Localization in Crowded Scenes" IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, January 2014,pp 18-32,VOL.36, NO.1. [Non-Patent Document 5] LIN,TY.et al."Microsoft COCO: Common Objects in Context" CoPR,2014,15 pages. [Non-Patent Document 6] MATTEOLI,S.et al."A Tutorial Overview of Anomaly Detection in Hyperspectral Images" IEEE A&E Systems Magazine, July 2010,pp.5-27,VOL.25,NO.7. [Non-Patent Document 7] RAMCHANDRAN,A.et al."Unsupervised deep learning system for local anomaly event detection in crowded scenes" Multimedia Tools and Applications,May 12,2019,21 pages. [Non-Patent Document 8] REDMON, J. et al. "YOLOv3: An Incremental Improvement" CoRP, 2018, 6 pages. [Non-Patent Document 9] TARABALKA, Y. et al. "Real-time anomaly detection in hyperspectral images using multivariate normal mixture models and GPU processing" J Real-Time Image Processing,2009,pp.287-300. [Non-Patent Document 10] WU,S.et al."Chaotic invariants of Lagrangian particle trajectories for anomaly detection in crowded scenes" 2010 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, June 2010,pp.2054-2060. [Non-Patent Document 11] YUAN,Y.et al. "Online Anomaly Detection in Crowd Scenes via Structure Analysis" IEEE Transactions on Cybernetics, March 2015, pp.562-575, VOL45, NO3. [Non-Patent Document 12] ZHU,Y.et al."Motion-Aware Feature for Improved Video Anomaly Detection" CoPR,2019,12 pages. [Non-Patent Document 13] CHRISTIANSEN,P.et al."DeepAnomaly: Combining Background Subtraction and Deep Learning for Detecting Obstacles and Anomalies in an Agricultural Field" Sensor,October 26,2016,22 pages. [Non-Patent Document 14] KIM,C.et al."A hybrid framework combining background subtraction and deep neural networks for rapid person detection" Journal Big Data(2018), 24 pages [Non-Patent Document 15] TIAN,Y.et al."Robust Detection of Abandoned and RemovedObjects in Complex Surveillance Videos" IEEE Transactions on Systems Man and Cybernetics Part C (Applications and Reviews),2011,13 pages Summary of the Invention [Problem to be solved by the invention]

[0006] Detecting anomalies in a given environment from images and videos can remain a challenging task because it is difficult to (a) detect previously unseen objects, (b) classify objects as anomalous or non-anomalous, and (c) detect if an object is missing. Thus, these tasks remain under human observation. Automated detection of anomalies in a given environment can help significantly reduce manual effort in surveillance and other object detection scenarios.

[0007] The techniques of this disclosure aim to significantly reduce the manual effort in detecting anomalies in a particular environment. [Means for solving the problem]

[0008] In the exemplary implementations described herein, there are two types of anomalies considered: additive (objects are added to the scene) and subtractive (objects are removed from the scene). The exemplary implementations described herein involve a multi-stage system that includes a combination of object detection and foreground segmentation models to generate regions of interest that are either objects in the scene or areas previously occupied by objects. Such regions are then classified as normal or anomalous.

[0009] The example implementations described herein may be implemented with static cameras and dynamically moving cameras associated with locations in the environment.

[0010] Aspects of the disclosure include a computer program storing instructions for performing processing, the instructions including: performing anomaly detection, for one or more images received from a system associated with an environment, based on matching one or more regions of interest extracted in foreground segmentation performed on the one or more images with one or more detected objects extracted in object detection performed on the one or more images, indicative of detection of an anomaly; and executing anomaly processing instructions based on the anomaly upon the anomaly detection. The instructions may be stored on a non-transitory computer readable medium and configured to be executed by one or more processors.

[0011] Aspects of the disclosure include a method that includes performing anomaly detection, for one or more images received from a system associated with an environment, based on matching one or more regions of interest extracted in foreground segmentation performed on the one or more images with one or more detected objects extracted in object detection performed on the one or more images, indicative of detection of an anomaly, and executing anomaly processing instructions based on the anomaly upon the anomaly detection. The instructions may be stored on a non-transitory computer-readable medium and configured to be executed by one or more processors.

[0012] An aspect of the present disclosure includes a system that includes: means for performing anomaly detection for one or more images received from a system associated with an environment based on matching one or more regions of interest extracted in foreground segmentation performed on the one or more images with one or more detected objects extracted in object detection performed on the one or more images, indicating detection of an anomaly; and means for executing an anomaly processing instruction based on the anomaly in response to the anomaly detection.

[0013] An aspect of the disclosure includes a management device configured to manage a plurality of systems over a network, each of the plurality of systems being associated with an environment, the management device comprising a processor configured to perform anomaly detection, for one or more images received from one of the plurality of systems, based on matching one or more regions of interest extracted in foreground segmentation performed on the one or more images with one or more detected objects extracted in object detection performed on the one or more images, indicating detection of an anomaly, and to execute anomaly processing instruction based on the anomaly in response to the anomaly detection.

[0014] Aspects of the disclosure include a system associated with an environment, the system comprising: a camera system; and a processor configured to perform anomaly detection for one or more images received from the camera system based on matching one or more regions of interest extracted from foreground segmentation performed on the one or more images with one or more detected objects extracted from object detection performed on the one or more images, indicating detection of an anomaly; and to execute anomaly processing instructions based on the anomaly in response to the anomaly detection.

[0015] In the above aspect, the environment may be associated with one or more expected objects, and the step of performing anomaly detection on one or more images received from the system may include indicating the detection of the anomaly for at least one of the one or more expected objects not detected in matching the one or more regions of interest with the object detection via a first indication indicating at least one of the one or more expected objects removed from the environment, and indicating the detection of the anomaly for an object detected in matching that is not present among the one or more expected objects associated with the environment via a second indication indicating an object added to the environment.

[0016] In the above aspect, the anomaly detection may include detecting an object added to the environment, and the anomaly handling instructions may include sending a message to a user associated with the environment regarding the object added to the environment. Also, in the above aspect, the anomaly detection may include detecting an object added to the environment, and the anomaly handling instructions may include sending an instruction to a projector system to activate the system to project on the object added to the environment. Also, in the above aspect, the anomaly detection may include detecting an object missing from the environment, and the anomaly handling instructions may include sending an alert. Also, in the above aspect, the environment may be a work booth. [Brief description of the drawings]

[0017] [Figure 1] FIG. 1 illustrates an exemplary overview of a system according to an exemplary implementation. [Diagram 2] FIG. 1 illustrates an anomaly classification and adaptation system according to an exemplary implementation. [Figure 3a] FIG. 1 illustrates an example detection according to an example implementation. [Figure 3b] FIG. 1 illustrates an example detection according to an example implementation. [Figure 4a] FIG. 1 illustrates a system for monitoring a particular environment according to an exemplary implementation. [Figure 4b] FIG. 1 illustrates an example implementation including a projector. [Diagram 5] FIG. 1 illustrates a system including a management device that manages multiple systems according to an exemplary implementation. [Figure 6] FIG. 1 illustrates an example computing environment having an example computer device suitable for use in some example implementations. [Figure 7a] FIG. 2 illustrates example management information available to facilitate example implementations described herein. [Figure 7b] FIG. 2 illustrates example management information available to facilitate example implementations described herein. [Figure 7c] FIG. 2 illustrates example management information available to facilitate example implementations described herein. [Figure 8] FIG. 1 illustrates an example of a work booth according to an exemplary implementation. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0018] The following detailed description provides details of the drawings and exemplary implementations of the present application. Reference numbers and descriptions of overlapping elements between the drawings are omitted for clarity. The terms used throughout the description are provided by way of example and are not intended to be limiting. For example, the use of the term "automatic" may include a fully automatic implementation or a semi-automatic implementation including user or administrator control over certain aspects of the implementation, depending on the desired implementation of the person skilled in the art implementing the implementation of the present application. The selection may be performed by a user via a user interface or other input means, or may be implemented via a desired algorithm. The exemplary implementations described herein may be utilized alone or in combination. The functionality of these exemplary implementations may be implemented via any means according to the desired implementation.

[0019] The problem of detecting unknown and / or missing objects in a particular environment can be important in operating various enterprise applications, such as monitoring unknown objects in large public facilities, office / work environments, warehouses, etc. In exemplary implementations described herein, systems exist that are designed to automate the tedious process of manually monitoring a particular environment and looking for anomalies therein. Exemplary implementations include deep learning-based systems that are configured to observe both expected objects that have been removed from the environment (e.g., stolen objects, missing objects, etc.) and objects that are not expected to be visible in a particular environment (e.g., objects left behind by a user).

[0020] In an exemplary implementation described herein, there is a system configured to detect and locate anomalies in a particular environment from images. Such anomalies may be broadly classified as additive anomalies or subtractive anomalies. As described herein, additive anomalies are previously unknown objects or objects that should not be in a particular environment that have entered the scene. For example, for a work desk, objects such as a monitor, keyboard, or mouse are expected to be in the environment, but a misplaced wallet may be an additive anomaly. Similarly, for images captured by an environmental monitoring system (e.g., a periodic operation of a security camera in the environment), a chair left in the hallway may be an example of an additive anomaly.

[0021] A subtractive anomaly is an area of ​​the image that was previously occupied by an object that should be in the environment but is now missing. In the work desk example, the missing monitor is a subtractive anomaly. Similarly, in the case of an environmental monitoring robot for an indoor office space, a missing frame from a wall or light fixture may be considered a subtractive anomaly.

[0022] Example implementations described herein are also configured to provide additional information about the anomaly, such as a category classification, if such anomaly detection has occurred in the past. Example implementations can also adjust in real time to classify a particular object as not anomalous even if it was anomalous in the past.

[0023] The exemplary implementation described herein includes a deep learning based system with two main features: “object detection” and “foreground segmentation.” The output of each of these features is further utilized to detect known objects and anomalies in the environment.

[0024] 1 shows an example overview of a system according to an example implementation. An input image 110 is provided to foreground segmentation 120 and object detection 130 for processing, which output regions of interest 141 and bounding boxes 132 to anomaly detection 140. Anomaly detection 140 performs matching 142 to identify anomalies 150.

[0025] The image 110 captured by the camera is used by a foreground segmentation model 120 to extract regions / areas containing unknown objects by using a foreground extraction 121 to generate a foreground mask 122. An example of the foreground extraction 121 function can include, but is not limited to, a variational autoencoder (VAE). The VAE is trained to consider all non-variants (e.g., regions in an image that do not change across multiple training images, such as stationary objects) as background. From the output of the VAE and the original image 110, a binary foreground mask 122 is calculated by taking the difference between the two images. This foreground mask 122 is further used to extract bounding boxes containing regions of interest (ROIs) by a function of ROI extraction 123. These ROI(s) are generated for areas that exhibit a sufficiently high concentration of foreground pixels and have sufficient differences between the foreground and background images. The ROI(s) extracted using the techniques described above provide regions / locations that are potential candidates for having objects added to the environment or known objects removed from the scene. The threshold can be set depending on the desired implementation.

[0026] For detection of known objects, an object detection 131 feature such as YOLOv3, a technique used to detect and localize objects in an image, is utilized. In an exemplary implementation, a YOLOv3 model is trained on objects expected to be found in a particular environment (e.g., monitors, keyboards, mice, clocks, doors, frames, exit signs, environmental monitoring robot (EMR) lights, etc.). During estimation, the model provides both the location (e.g., in the form of bounding boxes 132) and the category of the objects detected for a particular image. This information is further provided to an anomaly detection 140 feature.

[0027] For anomaly detection 140, the ROI(s) 141 detected by the foreground segmentation 120 feature are matched 142 with the object locations detected by the object detection 131 feature to classify unknown and known objects in a particular environment. The ROI(s) 141 that show sufficient overlap with the object locations (defined by the bounding box 132) are considered as known objects, while the ROI(s) 141 that do not have an overlapping counterpart are considered as anomalous or unknown objects in the environment.

[0028] 2 illustrates an anomaly classification and adaptation system according to an exemplary implementation. According to a desired implementation, the detected anomalies 150 can be further classified 220 using any object classifier method according to the desired implementation, such as ImageNet or COCO.

[0029] Further, the exemplary implementation may be configured to adapt to anomalies and not classify anomalous objects as anomalous objects if they are repeatedly seen in the scene by flagging such objects. Such exemplary implementation may be facilitated by encoding the detected anomalous objects into feature vectors by performing feature encoding 210 and storing them in a database managing previous detections 200. The feature vectors of the detected anomalous objects may then be compared to the feature vectors stored in this database 200 via a refinement process 230. If a previously detected object (e.g., the corresponding feature vector) has been flagged as non-anomalous by a user / administrator, the detected object with a similar feature vector may be labeled as non-anomalous accordingly, and the result provided as refined anomaly 240. Furthermore, if an underlying object may be identified based on previous detections 200 (e.g., based on an applied library of feature vectors of identified objects based on labeling provided by a user / administrator), the classification of the unknown object may be provided as additional information 250.

[0030] In this way, the exemplary implementations facilitate deep learning-based systems configured to detect additive anomalies (e.g., unknown objects added to an environment) and subtractive anomalies (e.g., expected objects missing from a particular environment). The exemplary implementations can also locate an object within a scene and determine whether the object has been moved or removed from a previous location.

[0031] Exemplary implementations can also classify detected unknown objects from a list of predefined categories such as COCO, ImageNet, etc. Classification of anomalous or non-anomalous objects can be applied in real applications.

[0032] 3(a) and 3(b) show an example detection according to an example implementation. In the example of FIG. 3(a), there are three moving items associated with an example environment (keyboard, mouse, clock) and one static item (monitor). Furthermore, each image contains examples of additive anomalies of a certain type (e.g., wallet, pen, bottle, key, etc.). FIG. 3(b) shows an example foreground mask 122 of the environment according to an example implementation.

[0033] FIG. 4(a) illustrates a system for monitoring a particular environment according to an exemplary implementation. The system 400 may include a camera system 401, a processor 403, a memory 404, and a network interface (I / F) 405. According to a desired implementation, the system 400 may include a projector system 402 and / or a sound system 406 as needed. In an exemplary implementation, the system 400 may be configured to be implemented in any monitored environmental setting, such as an office space, an enclosed work booth, a conference room, etc., according to a desired implementation. The camera system 401 may include one or more cameras to facilitate the exemplary implementation described herein. Any camera known in the art, such as, but not limited to, a red-green-blue (RGB) camera, may be utilized to facilitate the functionality of the camera system 401. The processor 403 may include one or more physical hardware processing devices, such as a central processing unit (CPU), or may be any combination of hardware and software processing devices. The network I / F 405 facilitates the connection and exchange of data between the system and a management device, as shown in FIG. 5.

[0034] Exemplary implementations described herein may include a projector system 402 configured to project light to highlight anomalies in the environment. The projector system 402 may include any type of projector known in the art for projecting light to facilitate such implementations. For example, when a user of the environment leaves the room, the projector may project light to highlight detected anomalies in the room to indicate to the user that an object has been left behind. According to a desired implementation, the sound system 406 may provide audio cues to indicate to the user that there is an abnormal object in the environment. The sound system 406 may include one or more speakers to facilitate the desired audio cues and may be any type of speaker known to those skilled in the art. Through such exemplary implementations, a user exiting the environment may thereby be alerted to a potential object left behind in the environment.

[0035] Depending on the desired implementation, the system 400 shown in Figure 4(a) may operate as a standalone system or as part of a network of multiple systems managed by a management device as shown in Figure 5. In an example of a standalone system, the system 400 is installed in an environment such as a work booth as shown in Figure 8.

[0036] In an example of a standalone system, the memory 404 is configured to store the management information shown in Figures 7(a) to 7(c). The processor 403 may be configured to perform anomaly detection for one or more images received from the camera system 401 based on matching one or more regions of interest extracted from foreground segmentation performed on the one or more images with one or more detected objects extracted from object detection performed on the one or more images, as shown at 120, 130, and 140 in Figure 1, and for anomaly detection indicating detection of anomaly as shown at 150 in Figure 1 and Figure 2, execute anomaly processing instructions based on the anomaly by executing a set of instructions depending on the type of anomaly, as shown in Figure 7(c).

[0037] In such an example of anomaly processing instructions, as shown in FIG. 2, a type of anomaly is determined based on the classification of the anomaly. It is then determined whether the anomaly is additive (e.g., an object has been added to the environment) or subtractive (e.g., an expected object as determined from the list of FIG. 7(a) based on the system ID or the environment) and whether the object is associated. For example, if the anomaly classification is additive and indicates the detection of an object added to the environment, the processor 403 may be configured to send a message to a user associated with the environment regarding the object added to the environment by identifying the user from the schedule information of FIG. 7(b) and sending a copy of the image of the anomalous object along with a pre-set message based on contact information associated with the user. Such contact information may include, but is not limited to, email, SMS, text messaging, or the like, depending on the example implementation.

[0038] In an exemplary implementation, the system and associated environment are associated with FIG. 7(a). The processor 403 may be configured to perform the processes illustrated in FIGS. 1 and 2 to perform anomaly detection on one or more images from the camera system 401. As illustrated in FIGS. 1 and 2, if at least one of the one or more expected objects is not detected from matching one or more regions of interest with the object detection, the processor 403 may indicate the detection of the anomaly via an indication of at least one of the one or more expected objects being removed from the environment. Such indications may include, but are not limited to, sending a message to an administrator indicating the missing object, generating an alert, providing a message to a user to move the object in the environment, etc., depending on the desired implementation. In the case of an additive anomaly (e.g., detection of an object not among one or more expected objects associated with the environment), the processor 403 may be configured to indicate the detection of the anomaly via an indication indicating that an object is being added to the environment. Such instructions may include highlighting anomalies in the image as shown in FIG. 3(a), sending a message to the user, sending a message to management or building management services depending on the type of object identified, etc., depending on the desired implementation.

[0039] In other exemplary implementations for detecting additive anomalies, the processor 403 may be configured to activate the projector system 402 to project onto the object added to the environment. Based on the location of the detected object in the image shown in FIG. 3(a), the projector system 402 may be controlled by the processor 403 to project light onto the object in the environment. In other exemplary implementations, the projector system 402 may be controlled by the processor 403 to project a message onto an exit of the environment (e.g., a door of a conference room or work booth, etc.) to inform the user of the object. In other exemplary implementations, the processor 403 may activate the sound system 406 to provide an audio cue to inform the user of the object, depending on the desired implementation.

[0040] In an exemplary implementation, the system and associated environment are associated with one or more expected objects, as shown in Figure 7(a). In such an exemplary implementation where anomaly detection is subtractive (e.g., at least one of the one or more expected objects is not detected by the process of Figures 1 and 2, or at least one of the expected objects is missing from the environment), the processor 403 may include instructions such as to send an alert. The alert may be in the form of sending a message to administrator or security to check the environment, providing an audio cue to the sound system 406, or in other ways depending on the desired implementation.

[0041] FIG. 4(b) illustrates an exemplary implementation including a projector. As shown in the example of FIG. 4(b), the projector system 402 is controlled by the processor 403 to project light onto the detected additive anomaly. In the example of FIG. 4(b), a coffee mug has been left behind by a previous user of the environment. When the user is no longer detected by the camera system 401, the projector system 402 projects light onto the detected additive anomaly (the coffee cup in the example of FIG. 4(b)) to alert the user that the item has been left behind.

[0042] FIG. 5 illustrates a system including a management device for managing multiple systems according to an exemplary implementation. One or more anomaly detection systems 400 illustrated in FIG. 4 are communicatively connected to a network 500 and a management device 501 via a network I / F 405. The management device 501 manages a database 502. The database 502 may include data such as feature vectors of previous detections 200, a library of objects for object classification, and other management information for managing an environment monitored by multiple systems. In an exemplary implementation, data from the anomaly detection systems 400 may be stored in a central repository or database, such as a dedicated database that stores data from equipment or equipment systems, such as an enterprise resource planning system. The management device 501 may access or retrieve data from the central repository or database.

[0043] 6 illustrates an exemplary computing environment having an exemplary computing device suitable for use in some exemplary implementations, such as the management device 501 shown in FIG. 5. The computing device 605 in the computing environment 600 can include one or more processing units, cores, or processors 610, memory 615 (e.g., RAM, ROM, and / or the like), internal storage 620 (e.g., magnetic, optical, solid-state storage, and / or organic), and / or I / O interfaces 625. Any of these may be connected to a communication mechanism or bus 630 to communicate information or may be built into the computing device 605. The I / O interface 625 is also configured to receive images from a camera or provide images to a projector or display, depending on the desired implementation.

[0044] The computing device 605 may be communicatively connected to an input / user interface 635 and an output device / interface 640. Either or both of the input / user interface 635 and the output device / interface 640 may be wired or wireless interfaces and may be removable. The input / user interface 635 may include any physical or virtual device, component, sensor, or interface that may be used to provide input (e.g., buttons, touch screen interface, keyboard, pointing / cursor control, microphone, camera, Braille, motion sensor, optical reader, etc.). The output device / interface 640 may include a display, television, monitor, printer, speaker, Braille, etc. In some exemplary implementations, the input / user interface 635 and the output device / interface 640 may be built into or physically connected to the computing device 605. In other exemplary implementations, other computing devices may function as or provide the functionality of the input / user interface 635 and / or the output device / interface 640 for the computing device 605.

[0045] Examples of computing devices 605 may include, but are not limited to, highly mobile devices (e.g., smart phones, devices in vehicles and other machines, devices carried by humans and animals, etc.), mobile devices (e.g., tablets, notebooks, laptops, personal computers, portable televisions, radios, etc.), and devices not designed for mobility (e.g., desktop computers, other computers, information kiosks, televisions, radios, etc. with and / or connected to one or more processors).

[0046] Computing device 605 may be communicatively connected (e.g., via I / O interface 625) to external storage 645 and network 650 for communicating with any number of network components, devices, and systems, including one or more computing devices of the same or different configurations. Computing device 605 or any connected computing device may function as or be referred to as a server, client, thin server, general purpose machine, special purpose machine, or other label providing services.

[0047] I / O interface 625 can include, but is not limited to, wired and / or wireless interfaces using any communication or I / O protocol or standard (e.g., Ethernet, 802.11x, Universal System Bus, WiMax, modem, cellular network protocols, etc.) to communicate information to and from at least all connected components, devices, and networks in computing environment 600. Network 650 can be any network or combination of networks (e.g., the Internet, a local area network, a wide area network, a telephone network, a cellular network, a satellite network, etc.).

[0048] The computing device 605 can use and / or communicate using computer usable or computer readable media, including transitory and non-transitory media. Transitory media includes transmission media (e.g., metallic cables, optical fibers), signals, carrier waves, etc. Non-transitory media includes magnetic media (e.g., disks and tapes), optical media (e.g., CD-ROMs, digital video disks, Blu-ray disks), solid media (e.g., RAM, ROM, flash memory, solid state storage), and other non-volatile storage or memory.

[0049] The computing device 605 may be used to execute techniques, methods, applications, processes, or computer-executable instructions in some exemplary computing environments. The computer-executable instructions may be obtained from a transitory medium or may be stored on and obtained from a non-transitory medium. The executable instructions may be generated from one or more of a programming language, a scripting language, and a machine language (e.g., C, C++, C#, Java, Visual Basic, Python, Perl, JavaScript, etc.).

[0050] The processor 610 can operate under any operating system (OS) (not shown) in a native or virtual environment. One or more applications may be deployed, including a logic unit 660, an application programming interface (API) unit 665, an input unit 670, an output unit 675, and an inter-unit communication mechanism 695 for different units to communicate with each other and with the OS and other applications (not shown). The above units and elements may be modified in design, function, configuration, or implementation and are not limited to the above description. The processor 610 may be in the form of a hardware processing unit, such as a central processing unit (CPU), or a combination of hardware and software units.

[0051] In some example implementations, when information or instructions to execute are received by API unit 665, it may be transmitted to one or more other units (e.g., logic unit 660, input unit 670, output unit 675). In some cases, logic unit 660 may be configured to control information flow between units and direct services provided by API unit 665, input unit 670, output unit 675 in some example implementations described above. For example, the flow of one or more processes or implementations may be controlled by logic unit 660 alone or in cooperation with API unit 665. Input unit 670 may be configured to obtain inputs for the calculations described in the example implementations, and output unit 675 may be configured to provide outputs based on the calculations described in the example implementations.

[0052] In an exemplary implementation of the management device shown in Fig. 5, the management device 501 manages a plurality of systems 400 such as those shown in Fig. 4, thereby managing a plurality of environments. In such an exemplary implementation, the database 502 or the memory 615 may be configured to store management information such as those shown in Fig. 7(a) to Fig. 7(c). Each of the plurality of systems 400 is configured to provide one or more images from the respective camera systems 401 to the management device 501 via the network I / F 405.

[0053] The processor 610 may be configured to perform anomaly detection for one or more images received from each system 400 based on matching one or more regions of interest extracted from foreground segmentation performed on the one or more images with one or more detected objects extracted from object detection performed on the one or more images, as shown at 120, 130, and 140 in FIG. 1, and for anomaly detection indicating detection of anomaly as shown at 150 in FIG. 1 and in FIG. 2, execute anomaly processing instructions based on the anomaly by executing a set of instructions depending on the type of anomaly, as shown in FIG. 7(c).

[0054] In such an example of anomaly processing instructions, as shown in FIG. 2, a type of anomaly is determined based on the classification of the anomaly. Then, it is determined whether the anomaly is additive (e.g., an object has been added to the environment) or subtractive (e.g., an expected object as determined from the list of FIG. 7(a) based on the system ID or the environment) and whether the object is related. For example, if the anomaly classification is additive and indicates the detection of an object added to the environment, the processor 403 may be configured to send a message to a user associated with the environment regarding the object added to the environment by identifying the user from the schedule information of FIG. 7(b) and sending a copy of the image of the anomalous object along with a pre-set message based on contact information associated with the user. Such contact information may include, but is not limited to, email, SMS, text messaging, or the like, depending on the example implementation.

[0055] In an exemplary implementation, the system 400 and associated environment are associated with FIG. 7(a). The processor 610 may be configured to perform the processes illustrated in FIG. 1 and FIG. 2 to perform anomaly detection on one or more images from the system 400. As illustrated in FIG. 1 and FIG. 2, if at least one of the one or more expected objects is not detected from matching one or more regions of interest with the object detection, the processor 601 may indicate the detection of the anomaly via an indication of at least one of the one or more expected objects being removed from the environment. Such indications may include, but are not limited to, sending a message to an administrator indicating the missing object, generating an alert, providing a message to a user to move the object in the environment, etc., depending on the desired implementation. In the case of an additive anomaly (e.g., detection of an object that is not among the one or more expected objects associated with the environment), the processor 403 may be configured to indicate the detection of the anomaly via an indication indicating that the object is being added to the environment. Such indications may include highlighting the anomaly in the image as illustrated in FIG. 3(a), sending a message to a user, sending a message to an administrator or building management services depending on the type of object identified, etc., depending on the desired implementation.

[0056] In another example implementation for detecting additive anomalies, the processor 610 may be configured to send instructions to each system 400 to activate the corresponding projector system 402 to project onto objects added to the environment. Based on the location of the detected object in the image shown in FIG. 3(a), the projector system 402 is controlled by the processor 403 to project light onto the object in the environment as described with respect to FIG.

[0057] In an exemplary implementation, as shown in Figure 7(a), the system and associated environment are associated with one or more expected objects. In such an exemplary implementation where anomaly detection is subtractive (e.g., at least one of the one or more expected objects is not detected from the process of Figures 1 and 2, or at least one of the expected objects is missing from the environment), the processor 610 may include instructions such as to send an alert, which may be in the form of sending a message to administrator or security to check the environment, providing an audio cue to the sound system 406, or in other ways depending on the desired implementation.

[0058] 7(a)-7(c) illustrate examples of management information that may be utilized to facilitate exemplary implementations described herein. Specifically, FIG. 7(a) illustrates management information for multiple systems 400 illustrated in FIG. 5. Each system 400 may be associated with a system identifier (ID) 701, expected objects 702, a system schedule or log 703, and anomaly handling procedures 704. The system ID 701 provides a unique identifier for the system and the environment associated with the system. The expected objects 702 are a list of expected objects that are in the environment. Such a list may be defined by a user / administrator or may be detected from anomaly detection, depending on the desired implementation. The schedule / log 703 may represent a log of interactions or a schedule of users expected to be in the environment, depending on the desired implementation. The anomaly handling procedures 704 include procedures for handling anomalies based on the detection of anomalies.

[0059] FIG. 7(b) shows an example of a schedule / log 703. The schedule / log 703 manages interactions or scheduled interactions that are to occur in an environment such as a work booth, a rented / temporary office, a conference room, etc. In the example of FIG. 7(b), a user ID 711, an entry time / scheduled time 712, and contact information 713 are illustrated. The user ID 711 is a unique identifier assigned to a user who interacts with the environment. The entry time / scheduled time 712 indicates the schedule of users who are expected to enter or have entered the environment at a particular time. The contact information 713 can include contact information for these users.

[0060] 7(c) shows an example of anomaly processing procedure 704. Each system may have processing associated with anomaly type 721 and may execute instruction set 722 to detect the associated anomaly type. Anomaly type 721 may indicate the type of anomaly and may include information on whether it is additive or subtractive and whether it is an associated object (if applicable). Instruction set 722 may include a set of instructions to be executed by system 400 based on the detection of the anomaly.

[0061] In example implementations described herein, the instruction set may be configured to send a notification to either the user shown in contact information 713 of FIG. 7(b) or to the system's administrator or security depending on the type of anomaly detected. In such example implementations, the notification is sent depending on the type of potential object and anomaly. For example, if the anomaly is subtractive to expected objects / equipment in the environment, the instruction set may include alerting security and forwarding contact information of the intended user or users detected in the environment to security. Such notification may be via any desired implementation, including SMS message, email message, etc.

[0062] In an example implementation of sending a notification to a user, if the anomaly is additive and the potential objects include objects belonging to the user (e.g., keys, cell phone, etc.), a basic instruction set may include activating a projector to highlight the object and / or outputting an audio cue from a sound speaker if the user is about to leave (e.g., detected through an office opening door or by any other desired method). In other example implementations, such an instruction set may also include contacting the user to inform them that an object has been left behind in the environment and transmitting an image of the detected object.

[0063] Thus, the anomaly handling may be tailored to facilitate and send notifications according to the desired implementation, although the disclosure is not limited thereto by the above examples.

[0064] FIG. 8 illustrates an example of a work booth according to an exemplary implementation. As illustrated in FIG. 8, the work booth is an enclosed work space that may be located in a conference room, a train station, or other public area and is available for access by users. Access to the work booth may be controlled by a door and lock that is controlled to be accessible by the user at a scheduled time and / or with correct authentication (e.g., authentication by key card, authentication by mobile application, etc.). The work booth may be equipped with chairs, desks, wireless or cellular connections, lighting, etc., depending on the desired implementation. According to the desired implementation, the work booth may also include equipment for access, such as a monitor, computer, keyboard, mouse, etc. In the exemplary implementation, the equipment is incorporated into a list of objects associated with the work booth, and a system such as that shown in FIG. 4 is installed in the work booth to monitor for anomalies.

[0065] 8 illustrates a work booth, other environments may be utilized depending on the desired implementation, and the disclosure is not limited thereto. Examples of such environments may include offices, conference rooms, common areas, lounges, etc.

[0066] Some portions of the detailed description are presented in terms of algorithms and symbolic representations of operations within a computer. These algorithmic descriptions and symbolic representations are the means used by those skilled in the information processing arts to convey the substance of their innovations to others skilled in the art. An algorithm is a sequence of defined steps leading to a desired end state or result. In exemplary implementations, the steps performed require physical manipulations of tangible quantities to achieve a definite result.

[0067] Unless otherwise indicated, and as will be apparent from the description, references throughout this specification using terms such as "processing," "computing," "calculating," "determining," "displaying," and the like, will be understood to include operations and processing of a computer system or other information processing device that manipulates and transforms data represented as physical (electronic) quantities in the registers and memory of the computer system into other data similarly represented as physical quantities in the memory or registers of the computer system, or other information storage, transmission, or display device.

[0068] Exemplary implementations may also relate to an apparatus for performing the operations herein. The apparatus may be specially constructed for the required purposes, or may include one or more general-purpose computers selectively activated or reconfigured by one or more computer programs. Such computer programs may be stored on a computer-readable medium, such as a computer-readable storage medium or a computer-readable signal medium. Computer-readable storage media may include tangible media, such as, but not limited to, optical disks, magnetic disks, read-only memory, random access memory, solid-state devices and drives, or other types of tangible or non-transitory media suitable for storing electronic information. Computer-readable signal media may include media such as carrier waves. The algorithms and displays presented herein are not inherently related to any particular computer or other apparatus. A computer program may include a pure software implementation that includes instructions for performing the operations of a desired implementation.

[0069] Various general-purpose systems can be used with the programs and modules according to the examples herein, or it may prove convenient to construct a more specialized apparatus to perform the desired method steps. Moreover, the exemplary implementations are not described with reference to any particular programming language. It will be appreciated that a variety of programming languages ​​may be used to implement the teachings of the exemplary implementations as described herein. Instructions in the programming language may be executed by one or more processing devices, such as a central processing unit (CPU), processor, or controller.

[0070] As is known in the art, the operations described above can be performed by hardware, software, or some combination of software and hardware. Various aspects of the exemplary implementations may be implemented using circuits and logic devices (hardware), while other aspects may be implemented using instructions stored on a machine-readable medium (software) that, when executed by a processor, cause the processor to perform a method for performing an implementation of the present application. Furthermore, some exemplary implementations of the present application may be performed exclusively in hardware, while other exemplary implementations may be performed exclusively in software. Furthermore, the various functions described may be performed in a single unit or distributed across multiple components in any number of ways. When performed by software, the method may be executed by a processor, such as a general-purpose computer, based on instructions stored on a computer-readable medium. If desired, the instructions may be stored on the medium in a compressed and / or encrypted format.

[0071] Moreover, other implementations of the present application will be apparent to those skilled in the art from consideration of the specification and practice of the teachings of the present invention. Various aspects and / or components of the described exemplary implementations may be used alone or in any combination. It is intended that the specification and exemplary implementations be considered as examples only, with a true scope and spirit of the present application being indicated by the following claims.

Claims

1. On the computer, performing anomaly detection on one or more images received from a system associated with the environment based on matching one or more regions of interest extracted in a foreground segmentation performed on the one or more images with one or more detected objects extracted in an object detection performed on the one or more images, the anomaly being indicative of a detection of an anomaly; executing an abnormality processing command based on the abnormality in response to the abnormality detection; A program for executing the environment is associated with one or more anticipated objects anticipated to be present in the environment; performing anomaly detection on the one or more images received from the system, for at least one of the one or more expected objects not detected in the matching of the one or more regions of interest with the object detection, indicating the detection of the anomaly via a first indication indicating the at least one of the one or more expected objects having been removed from the environment; and indicating the detection of the anomaly via a second indication indicating the object added to the environment for an object detected in the matching that is not present among the one or more expected objects associated with the environment. Including, the program.

2. the anomaly detection includes detecting objects added to the environment; the anomaly handling instructions include sending a message to a user associated with the environment regarding the object that was added to the environment. The program according to claim 1.

3. the anomaly detection includes detecting objects added to the environment; the anomaly handling instructions include sending instructions to a projector system to activate the system to project onto an object added to the environment; The program according to claim 1.

4. the anomaly detection includes detecting objects missing from the environment; the abnormality handling instructions include sending an alert; The program according to claim 1.

5. The program of claim 1 , wherein the environment is a work booth.

6. A management device configured to manage a plurality of systems over a network, each of the plurality of systems being associated with an environment; The management device, performing anomaly detection for one or more images received from one of the plurality of systems based on matching one or more regions of interest extracted during foreground segmentation performed on the one or more images with one or more detected objects extracted during object detection performed on the one or more images, the anomaly being indicative of a detection of anomaly; Executing an abnormality processing command based on the abnormality when the abnormality is detected. a processor configured to: the environment is associated with one or more expected objects expected to be present in the environment; The processor, for at least one of the one or more expected objects not detected in the matching of the one or more regions of interest with the object detection, indicating the detection of the anomaly via a first indication indicating the at least one of the one or more expected objects having been removed from the environment; by indicating the detection of the anomaly via a second indication indicating the object that has been added to the environment for an object detected in the matching that is not present among the one or more expected objects associated with the environment; configured to perform anomaly detection on the one or more images received from the system. Management device.

7. the anomaly detection includes detecting objects added to the environment; the anomaly handling instructions include sending a message to a user associated with the environment regarding the object that was added to the environment. The management device according to claim 6.

8. the anomaly detection includes detecting objects added to the environment; the anomaly handling instructions include sending instructions to a projector system to activate the system to project onto an object added to the environment; The management device according to claim 6.

9. the anomaly detection includes detecting objects missing from the environment; the abnormality handling instructions include sending an alert; The management device according to claim 6.

10. The management device of claim 6 , wherein the environment is a work booth.

11. 1. A system associated with an environment, comprising: A camera system; performing anomaly detection for one or more images received from the camera system based on matching one or more regions of interest extracted in foreground segmentation performed on the one or more images with one or more detected objects extracted in object detection performed on the one or more images, the anomaly indicating detection of an anomaly; a processor configured to, in response to the anomaly detection, execute an anomaly processing instruction based on the anomaly; Equipped with the environment is associated with one or more expected objects expected to be present in the environment; The processor, for at least one of the one or more expected objects not detected in the matching of the one or more regions of interest with the object detection, indicating the detection of the anomaly via a first indication indicating the at least one of the one or more expected objects having been removed from the environment; by indicating the detection of the anomaly via a second indication indicating the object that has been added to the environment for an object detected in the matching that is not present among the one or more expected objects associated with the environment; configured to perform anomaly detection on the one or more images received from the camera system. system.

12. the anomaly detection includes detecting objects added to the environment; the anomaly handling instructions include sending a message to a user associated with the environment regarding the object that was added to the environment. The system of claim 11.

13. Further comprising a projector system; the anomaly detection includes detecting objects added to the environment; the anomaly handling instructions include activating the projector system to project onto an object added to the environment. The system of claim 11.

14. the anomaly detection includes detecting objects missing from the environment; the abnormality handling instructions include sending an alert; The system of claim 11.

15. The system of claim 11 , wherein the environment is a work booth.

Citation Information

Patent Citations

  • Image processing apparatus, and image processing method

    JP2013232181A

  • Information processing device, and information processing method and program

    JP2018056908A

  • Anomaly detection system and a method of teaching it

    US7613668B2

  • Anomaly detection in images and videos

    WO2013062738A1