Power saw hand detection and control

By integrating the camera, IMU sensor and electronic controller in the power saw, using machine learning models to detect whether the hand enters the prohibited area and performs safe actions, the damage caused by the contact between the hand and the saw blade during the use of the power saw tool is solved, and the safety of use is improved.

CN120126170APending Publication Date: 2025-06-10MILWAUKEE ELECTRIC TOOL CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411798697.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-12-29
Filing Date
2024-12-09
Publication Date
2025-06-10

AI Technical Summary

Technical Problem

During the use of power saw tools, the saw blade may cause injury when it comes into contact with the user's hands, and the prior art is difficult to effectively prevent such accidents.

Method used

Using a camera, an inertial measurement unit (IMU) sensor and an electronic controller, a camera image is analyzed through a machine learning model to determine whether a part of the hand exists in the prohibited area of ​​the saw blade, and perform safe actions when the hand is detected.

Benefits of technology

The detection and protection of hands during the use of power saws is achieved, which reduces the risk of injury caused by contact between hands and saw blades and improves the safety of use.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120126170A_ABST
    Figure CN120126170A_ABST
Patent Text Reader

Abstract

The invention relates to powered saw hand detection and control. A power saw comprising: at least one camera; a sensor; a saw blade; a motor configured to drive the saw blade; and an electronic controller including an electronic processor and a memory. The electronic controller receives an indication of the orientation of the saw blade from the sensor and determines a prohibition area based on the orientation of the saw blade, where the prohibition area is defined corresponding to or relative to the saw blade. An image taken from the at least one camera is received by the electronic controller, wherein the taken image includes at least a portion of the prohibited area. The electronic controller analyzes the captured image using a machine learning (ML) model to determine whether a portion of the hand is present in the prohibited area, and performs a security action in response to detecting that the portion of the hand is in the prohibited area.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Cross - Reference to Related Applications

[0002] This application claims the benefit of U.S. Provisional Patent Application Serial No. 63 / 608,034, filed on December 8, 2023, titled "POWERED SAW HAND DETECTION AND CONTROL", and U.S. Provisional Patent Application Serial No. 63 / 616,115, filed on December 29, 2023, titled "POWERED SAW HAND DETECTION AND CONTROL", each of which is incorporated herein by reference in its entirety. Background Art

[0003] Power saw tools include a motor that drives a saw blade at high speed (e.g., rotates) to cut work materials (e.g., wood, plastic, metal). These tools can include miter saws, table saws, circular saws, panel saws, etc., and are widely used in construction, woodworking, and various other industries to allow a user to make controlled cuts in a range of materials. For various reasons, using a power saw tool can result in injury when the driven saw blade comes into contact with the user's hand. Summary of the Invention

[0004] The present disclosure provides a power saw, comprising: a camera; an inertial measurement unit (IMU) sensor; a saw blade; a motor configured to drive the saw blade; and an electronic controller including an electronic processor and a memory. The electronic controller is configured to: receive an indication of the orientation of the saw blade from the IMU sensor; determine a prohibited area corresponding to the saw blade based on the orientation of the saw blade; receive a captured image from the camera, the captured image including at least a portion of the prohibited area; analyze the camera image using a machine learning (ML) model to determine whether a portion of a hand is present in the prohibited area; and perform a safety action in response to detecting that a portion of the hand is in the prohibited area.

[0005] Another aspect of the present disclosure is to provide a method of operating a power saw. The method includes receiving an indication of the orientation of the saw blade from a sensor of the power saw; determining a prohibited area defining a volume relative to the saw blade based on the orientation of the saw blade; receiving image data from a camera of the power saw, the image data depicting at least a portion of the prohibited area; analyzing the camera image using an ML model to determine whether a portion of a hand is present in the prohibited area; and performing a safety action in response to detecting that a portion of the hand is in the prohibited area. Other embodiments of this aspect include corresponding systems (e.g., computer systems), programs, algorithms, and / or modules, each configured to perform the steps of the method. Brief Description of the Drawings

[0006] Figure 1AShows an exemplary miter saw according to some embodiments.

[0007] Figure 1B Shows an exemplary camera assembly coupled to a miter saw according to some embodiments.

[0008] Figure 1C Shows an exemplary miter saw having two cameras coupled thereto according to some embodiments.

[0009] Figure 1D Shows an example of a three-dimensional prohibited area projected onto a two-dimensional camera plane.

[0010] Figure 1E Shows an example of a warning prohibited area according to some embodiments.

[0011] Figure 1F Shows an example of a danger prohibited area according to some embodiments.

[0012] Figure 2A and 2B Shows an exemplary table saw according to some embodiments.

[0013] Figure 3 Is a block diagram of a power saw tool according to some embodiments.

[0014] Figure 4 Is a flowchart showing an example method for controlling the operation of a power saw according to some embodiments.

[0015] Figure 5 Is a flowchart showing an exemplary method for detecting an unsafe operating condition of a power saw according to some embodiments.

[0016] Figure 6 Shows an example image captured using a camera coupled to a miter saw.

[0017] Figure 7 Is a flowchart showing an example method for identifying whether a detected hand is present in a prohibited area of a power saw according to some embodiments.

[0018] Figure 8 Shows an example for estimating the pose of a miter saw according to some embodiments.

[0019] Figure 9A Shows an example of a detected hand object identified as intersecting a warning prohibited area.

[0020] Figure 9B Shows an example of a detected hand object identified as intersecting a danger prohibited area.

[0021] Figure 10is a flowchart showing an example method for training a machine learning model for hand detection according to some embodiments.

[0022] Figure 11 is a flowchart showing an example method for detecting an unsafe operating condition of a power saw based on processing image data using an optical flow detection model. DETAILED DESCRIPTION

[0023] Systems and methods are provided herein for detecting a user's hand in one or more prohibited regions (e.g., near the saw blade or in the path of the saw blade) during operation of a power saw, and in response, controlling the power saw to perform a safety action (e.g., generating a warning, stopping the saw blade, or both generating a warning and stopping the saw blade).

[0024] In some embodiments described herein, the power saw determines a prohibited region based on the output of a sensor (e.g., an inertial sensor such as an inertial measurement unit (IMU)), executes a machine learning (ML) model to analyze a camera image including the prohibited region, and in response to detecting a user's hand in the prohibited region, performs a safety action (e.g., generating a warning and / or stopping the motor).

[0025] The disclosed hand detection techniques have robust detection capabilities. For example, rather than being limited to detecting flesh (e.g., via a capacitance sensor), certain optical characteristics (e.g., a specific skin color, the color of a work glove (e.g., a green or blue work glove), etc.), or certain lighting conditions, the hand detection techniques can detect hands in various scenarios (e.g., in gloves, a partially occluded view of a hand covered by clothing, various lighting conditions, having different skin colors, in the case where the power saw is operating at different miter and bevel angles, etc.). This robustness is, for example, generated by training an ML model that uses images of these various scenarios to detect hands. Additionally, the hand detection techniques can be adaptive based on the pose or orientation of the power saw. For example, the hand detection techniques can define a prohibited region based on the output from an IMU or other sensor attached to the saw (e.g., the arm of the saw), which enables the hand detection techniques to account for different miter and bevel angles. That is, the prohibited region can be defined based on the output from an IMU or other sensor such that the prohibited region can be dynamically changed or updated as the miter and / or bevel angle of the saw blade is changed by the user.

[0026] In addition to detecting the presence of a hand in a prohibited area of a power saw, the systems and methods described in this disclosure can also be used with other tools where a workpiece is movable, or other tools where a user's hand can come into close contact with a moving part of the tool. In these cases, the position of the workpiece can be detected and tracked relative to the prohibited area and / or the user's hand can be detected and tracked relative to the prohibited area. For example, the techniques described herein can be applied to other power tools and industrial machines, including planers, connectors, routers, drill presses, hydraulic presses, and the like.

[0027] Figure 1A –1C shows a miter saw 100 according to some embodiments. The miter saw 100 is an example of a power saw that can implement the hand detection and control techniques described herein. As shown, the miter saw 100 includes one or more cameras 110 coupled to the miter saw 100. The cameras 110 can be coupled to the housing of the miter saw 100, the arm of the miter saw 100, etc. In Figure 1B the illustrated example, the camera 110 can be mounted or otherwise coupled to a cantilever 112 that is coupled to the housing of the miter saw 100.

[0028] An indicator light 114 (e.g., a feedback light) can be coupled to or otherwise integrated with the cantilever 112. As will be described in more detail below, the indicator light 114 can be operable to perform a safety action in response to detecting a hand in a prohibited area of the miter saw 100. For example, the indicator light 114 can be operable to produce different colors of light based on the safety action performed. As a non-limiting example, when a warning safety action is performed (e.g., when a hand is detected in a warning prohibited area), the indicator light 114 can be operated to generate yellow light. When a danger safety action is performed (e.g., when a hand is detected in a danger prohibited area), the indicator light 114 can be operated to generate red light. When the miter saw 100 is operating under safe conditions (e.g., when no hand is detected in the prohibited area), the indicator light 114 can be operated to produce green light. The indicator light 114 can be a light-emitting diode (LED), an LED strip, an LED array, or other suitable light. The camera 110, the cantilever 112, and the indicator light 114 can together form a camera assembly 116. One or more such camera assemblies 116 can be coupled to the miter saw 100, such as one camera assembly 116 on each side of the blade of the miter saw 100.

[0029] As Figure 1CAs shown, in some examples, two cameras 110a, 110b are coupled to the miter saw 100. In the example shown, the first camera 110a is coupled to or mounted on one side of the blade of the miter saw 100, and the second camera 110b is coupled to or mounted on the other side of the blade of the miter saw 100. In some examples, the cameras 110a, 110b may be arranged close to the blade of the miter saw 100 such that the fields of view of the cameras 110a, 110b may be aligned along the length of the blade. Arranging the cameras 110a, 110b adjacent to the blade can help reduce ambiguity along the depth direction of the cameras 110a, 110b.

[0030] An example of the prohibited area 150 of the miter saw 100 is shown in Figure 1D FIG. In the example shown, the prohibited area 150 is generally defined by a volume extending around the saw blade of the miter saw 100. The prohibited area 150 may constitute a single zone, area, or volume, or may be composed of multiple prohibited areas. For example, a warning zone (e.g., warning prohibited area 152) of the prohibited area 150 may be defined as a zone where the user is at an increased risk of injury but not an immediate risk of injury. Similarly, a danger zone (e.g., danger prohibited area 154) of the prohibited area may be defined as a smaller zone where the user is at an immediate risk of injury. The danger zone may be at least partially contained within the warning zone such that the danger prohibited area 154 may be smaller than the warning prohibited area and at least partially contained within the warning prohibited area. As will be described in more detail below, the volume of the prohibited area 150 (or warning prohibited area 152 and danger prohibited area 154) is projected onto a plane (such as a two-dimensional (2D) camera plane 156 associated with one or more cameras 110), thereby forming a projected prohibited area 158. The detected hand object 160 is tracked, and one or more safety actions may be performed when the detected hand object 160 intersects the projected prohibited area 158.

[0031] As a non-limiting example, when the hand object 160 intersects the projected warning prohibited area, one or more executed safety actions may include outputting an auditory (or audible) warning to the user, outputting a visual warning to the user, or outputting both an auditory warning and a visual warning to the user. The auditory warning may include an intermittent auditory warning (e.g., a series of tones, beeps, etc.) played by a speaker on the miter saw 100. The visual warning may include generating yellow light via the indicator light 114. When the hand object 160 intersects the projected danger prohibited area, one or more executed safety actions may include stopping the operation of the saw blade (e.g., by mechanically braking the saw blade, electronically braking the saw blade, etc.), outputting an auditory warning to the user, outputting a visual warning to the user, or a combination thereof. The auditory warning may include a constant tone played by a speaker on the miter saw 100. The visual warning may include generating red light via the indicator light 114.

[0032] As Figure 1E shown, in a non-limiting example, the warning prohibited area 152 may correspond to a volume extending through the cutting plate of the miter saw 100. As Figure 1F shown, in a non-limiting example, the danger prohibited area 154 may correspond to a volume extending through a slot in the cutting plate, which allows the saw blade to pass through when cutting through a workpiece is completed, or may be defined by the cutting plane of the saw blade. The size and shape of each prohibited area 150 (e.g., the warning prohibited area 152, the danger prohibited area 154) may be pre-determined, adjusted by the user, and / or dynamically adjusted during the operation of the miter saw 100. For example, the width of each prohibited area 150 may be adjusted by the user and / or dynamically adjusted during the operation of the miter saw 100 (e.g., by changing the bevel angle and / or tilt angle of the saw blade).

[0033] Figure 2A and 2B illustrates a table saw 200 according to some embodiments. Similar to the miter saw 100, the table saw 200 is an example of a power saw that may implement the hand detection and control techniques described herein. The table saw 200 includes one or more cameras 210 coupled to the table saw 200. In the example shown, two cameras 210a, 210b are coupled to the table saw 200 via a cantilever 212. The cameras 210a, 210b are coupled to or otherwise mounted on the cantilever 212, which is coupled to the frame or housing of the table saw 200. The cantilever 212 may be a relatively thin support for the cameras 210a, 210b. For example, the cantilever 212 may have a width similar to or thinner than the rip fence 232 of the table saw 200, such that when a workpiece is cut by the blade 230 of the table saw 200, material may be allowed to pass by the cantilever 212. The cameras 210a, 210b may be coupled to or otherwise mounted on the cantilever 212 such that they are angled and to the sides of the blade 230 to avoid the blade guard. Although inFigure 2A not shown in FIGS. 2A or 2B, but similar to Figure 1B the indicator light 114 shown in FIGS. 2A or 2B, the indicator light may also be coupled to the cantilever 212.

[0034] Similar to the miter saw 100, the table saw 200 may have one or more prohibited areas defined relative to the blade 230. For example, a warning prohibited area may be defined by a volume extending through the rip fence of the table saw 200, and a danger prohibited area may be defined by a volume extending through a slot in the rip fence or otherwise extending through the cutting plane of the table saw 200.

[0035] Figure 3 A block diagram of an exemplary power saw 300 is shown. The power saw 300 may be a miter saw (e.g., Figure 1A the miter saw 100 shown in FIGS. 2A or 2B), a table saw (e.g., Figure 2A the table saw 200 shown in FIGS. 2A or 2B) or other suitable type of power saw. Thus, Figure 3 the block diagram is applicable to the examples of the miter saw 100 and the table saw 200, as well as other types of power saws. In other examples, the power saw 300 is implemented as a different type of power saw than the examples shown of the miter saw 100 and the table saw 200.

[0036] The power saw 300 includes an electronic controller 320, a power source 352 (e.g., a battery pack, a portable power source, and / or a wall-mounted power outlet), etc. In the illustrated embodiment, the power saw 300 also includes a wireless communication device 360. In other embodiments, the power saw 300 may not include the wireless communication device 360.

[0037] The electronic controller 320 may include an electronic processor 330 and a memory 340. The electronic processor 330 and the memory 340 may communicate via one or more control buses, data buses, etc., which may include a device communication bus 354. For illustrative purposes, the control and / or data buses are generally shown in Figure 3 FIGS. 2A or 2B. The use of one or more control and / or data buses for the interconnection and communication between various modules, circuits, and components is known to those skilled in the art.

[0038] The electronic processor 330 may be configured to communicate with the memory 340 to store data and retrieve the stored data. The electronic processor 330 may be configured to receive instructions 342 and data from the memory 340 and execute the instructions 342, etc. In particular, the electronic processor 330 executes the instructions 342 stored in the memory 340. Thus, the electronic controller 320 coupled to the electronic processor 330 and the memory 340 may be configured to perform the methods described herein (e.g., Figure 4 one or more aspects of the process 00 of FIGS. 2A or 2B; Figure 5One or more aspects of process 00; Figure 7 One or more aspects of process 00; Figure 10 One or more aspects of process 00; and / or Figure 11 One or more aspects of process 00).

[0039] In some examples, electronic processor 330 includes one or more electronic processors. For example, as shown, electronic processor 330 includes a central processing unit 332 and a machine learning (ML) processor 334. In other examples, the functions of central processing unit 332 and / or ML processor 334 are combined into a single processor or further distributed among additional processors.

[0040] Additionally or alternatively, electronic processor 330 (or central processing unit 332 or ML processor 334) may include one or more artificial intelligence (AI) accelerator cores. The AI accelerator cores may include dedicated processing units (e.g., arithmetic logic units (ALUs), floating point units (FPUs), etc.) configured to perform specific operations involved in neural network training and / or inference. As a non-limiting example, the processing units of the AI accelerator cores may be organized to facilitate parallel processing, thereby allowing for the simultaneous execution of multiple computations.

[0041] Memory 340 may include read-only memory (“ROM”), random access memory (“RAM”), other non-transitory computer-readable media, or a combination thereof. As described above, memory 340 may include instructions 342 for execution by electronic processor 330. Instructions 342 may include software executable by electronic processor 330 to enable electronic controller 320 to receive data and / or commands, send data, control the operation of power saw 300, etc. For example, instructions 342 may include software executable by electronic processor 330 to enable electronic controller 320 to implement various functions of electronic controller 320 described herein, including performing hand detection and controlling the operation of power saw 300. The software may include, for example, firmware, one or more applications, program data, filters, rules, one or more program modules, and other executable instructions.

[0042] As shown, the memory 340 may also store a machine learning (ML) model 344. The ML model 344 may be a pre-trained machine learning model (e.g., a neural network, another machine learning model trained for object detection) executed by the electronic processor 330. In some examples, the ML processor 334 may execute the ML model 344 to perform hand detection for the power saw 300, as described herein. In other words, the ML processor 334 may act as a dedicated processor to execute the ML model 344 to detect a hand, as described herein. In such examples, the central processor 332 may execute other controls for the power saw 300, e.g., enabling and disabling the motor (e.g., motor 372).

[0043] The electronic processor 330 is configured to retrieve and execute instructions 342 and the like related to the control processes and methods described herein from the memory 340. The electronic processor 330 is also configured to store data on the memory 340, including usage data (e.g., usage data of the power saw 300), maintenance data (e.g., maintenance data of the power saw 300), feedback data, power data, sensor data (e.g., sensor data of the power saw 300), environmental data, operator data, location data, etc.

[0044] In some examples, the electronic processor 330 may receive instructions 342 from the memory 340, which include settings or configurations for the size and shape of one or more prohibited areas; the type, duration, and / or volume of an audible warning; the type of a visual warning; and so on. These power saw settings may be received and / or updated wirelessly via an application (e.g., an app), customized in firmware (e.g., programmed for a specific user at manufacturing or with a firmware update), customized via input directly on the power tool device (e.g., via buttons, switches, a set of user interface actions, on-screen controls, etc.).

[0045] The power supply 352 may be an AC power supply or a DC power supply, which may be in electrical communication with one or more power outlets (e.g., AC or DC outlets). For example, the power supply 352 may be an AC power supply, e.g., a conventional wall-mounted power outlet, or the power supply 352 may be a DC power supply, e.g., a battery pack.

[0046] In some examples, power source 352 can include a battery pack interface and a selectively attachable and removable power tool battery pack. The pack interface can include one or more power terminals and, in some cases, one or more communication terminals that interface with corresponding power and / or communication terminals of the power tool battery pack. The power tool battery pack can include one or more battery cells having various chemistries (such as lithium-ion (Li-ion), nickel cadmium (Ni-Cad), etc.). The power tool battery pack can also be selectively locked (e.g., via a spring-biased locking mechanism) to and unlocked from the power saw 300 to prevent accidental detachment. The power tool battery pack can also include a pack electronic controller (e.g., a pack controller) that includes a processor and a memory. The pack controller can be configured similarly to electronic controller 320. The pack controller can be configured to regulate charging and discharging of the battery cells and / or communicate with electronic controller 320.

[0047] In other examples, the power saw 300 can be corded and the power source 352 can include a corded power interface, e.g., to receive external power (such as AC power) from a wall-mounted power outlet or the like.

[0048] In some embodiments, the power saw 300 can also include a wireless communication device 360. In these embodiments, the wireless communication device 360 is coupled to the electronic controller 320 (e.g., via a device communication bus 354). The wireless communication device 360 can include, for example, a radio transceiver and antenna, a memory, and an electronic processor. In some examples, the wireless communication device 360 can further include a GNSS receiver configured to receive signals from GNSS satellites, land-based transmitters, etc. The radio transceiver and antenna operate together to send and receive wireless messages to and from external devices (such as smart phones, tablet computers, cellular phones, laptop computers, smart watches, headsets, head-up displays, virtual reality (“VR”) goggles, augmented reality (“AR”) goggles, security cameras, web cameras, etc.), one or more additional power tool devices (such as a power tool battery charger, a power tool battery pack, a power tool, a work light, a power tool set adapter, and other devices used in conjunction with a power tool battery charger, a power tool battery pack, and / or a power tool), a server, and / or the electronic processor of the wireless communication device 360. The memory of the wireless communication device 360 stores instructions to be executed by the electronic processor of the wireless communication device 360 and / or can store data related to communication between the power saw 300 and external devices, one or more additional power tool devices, and / or a server.

[0049] An electronic processor of the wireless communication device 360 controls wireless communication between the power saw 300 and an external device, one or more additional power tool devices, and / or a server. For example, the electronic processor of the wireless communication device 360 caches input and / or output data, communicates with the electronic processor 330 of the power saw 300, and determines communication protocols and / or settings to be used in the wireless communication.

[0050] In some embodiments, the wireless communication device 360 is a controller. The controller communicates with an external device, one or more additional power tool devices, and / or a server that employs a protocol. Thus, in such embodiments, the external device, one or more additional power tool devices, and / or the server and the power saw 300 are within communication range (i.e., nearby) of each other when they exchange data. In other embodiments, the wireless communication device 360 communicates using other protocols (e.g., cellular protocols, proprietary protocols, etc.) on different types of wireless networks. For example, the wireless communication device 360 may be configured to communicate via a wide area network or a local area network such as the Internet, or communicate via a piconet (e.g., using infrared or NFC communication). Communication via the wireless communication device 360 may be encrypted to protect data exchanged between the power saw 300 and the external device, one or more additional power tool devices, and / or the server from access by third parties.

[0051] In some embodiments, the wireless communication device 360 outputs usage data, other power tool device data, and / or other data as described above from the power tool device 102 (e.g., from the electronic processor 330).

[0052] In some embodiments, the wireless communication device 360 may be located in a separate housing together with the electronic controller 320 or another electronic controller, and the separate housing is selectively attached to the power tool device 102. For example, the separate housing may be attached to an outer surface of the power tool device 102, or may be inserted into a socket of the power tool device 102. Thus, the wireless communication capabilities of the power tool device 102 may be partially resident on a selectively attachable communication device rather than integrated into the power tool device 102. Such a selectively attachable communication device may include electrical terminals that engage corresponding electrical terminals of the power tool device 102 to enable communication between the corresponding devices and enable the power tool device 102 to supply power to the selectively attachable communication device. In other embodiments, the wireless communication device 360 may be integrated into the power tool device 102. In some embodiments, the wireless communication device 360 is not included in the power tool device 102.

[0053] The electronic component 370 includes a motor 372, one or more sensors 374, one or more cameras 376, and one or more feedback devices 378.

[0054] In some examples, the motor 372 is configured to rotate a saw blade 380. The electronic component 370 may also include additional sensors and circuitry to control the motor 372. For example, the electronic component 370 may include an inverter bridge controlled by a pulse width modulation signal (generated by the electronic controller 320) to drive the motor 372. The motor 372 may be, for example, a brushed or brushless motor.

[0055] One or more sensors 374 may include an accelerometer, a gyroscope, a magnetometer, an angular encoder, or other sensing devices configured to output an indication of its orientation. The (one or more) sensors 374 may be mounted on an arm of the power saw 300 or otherwise connected to a movable component of the power saw 300 that tracks the movement of the saw blade 380 (e.g., translation of the saw blade 380, change in orientation of the saw blade 380, rotation of the saw blade 380 during operation, etc.). Thus, the output of the (one or more) sensors 374 may indicate the position and / or orientation of the saw blade 380, including bevel angle, tilt angle, or both. The position and / or orientation of the saw blade 380 may be collectively referred to as the pose of the saw blade 380. The output of the sensors 374 may be provided to the electronic controller 320 (e.g., the electronic processor 330 and / or the ML processor 334) to determine the position, orientation, and / or pose of the saw blade 380 and / or the power saw 300.

[0056] In some examples, the (one or more) sensors 374 may additionally include one or more of a voltage sensor or voltage sensing circuit, a current sensor or current sensing circuit, a temperature sensor or temperature sensing circuit, a pressure sensor or pressure sensing circuit (e.g., a barometer), etc. The power saw 300 may also include a connection for an external sensor (e.g., a wired or wireless connection).

[0057] The camera 376 may capture image data and output the image data to the electronic controller 320 (e.g., the electronic processor 330 and / or the ML processor 334), and the image data may be used as an input to the ML model 344 executed on the electronic processor 330. The camera 376 may include a left camera and a right camera, each camera positioned on opposite (left and right) sides of the saw blade 380. For example, in Figure 1A - 1C the miter saw 100 shown in, the camera 376 may include cameras 110a, 110b, and in Figure 2A - 2B the table saw 200 shown in, the camera 376 may include cameras 210a, 210b.

[0058] The camera 376 can be any suitable camera for recording or otherwise capturing images of a scene. The camera 376 can thus capture a single image frame or a series of image frames, or can record a video stream of the scene. To capture a wide field of view, the camera 376 can include a wide-angle lens, a fish-eye lens, etc.

[0059] The feedback device 378 can be controlled by the electronic controller 320 (e.g., the electronic processor 330, the central processing unit 332, and / or the ML processor 334) to provide feedback to the user based on the output of the electronic controller 320, which indicates whether an unsafe operating condition exists (e.g., when a hand is detected within one or more prohibited areas). The feedback device 378 can include a light (e.g., an LED), a speaker, or both. As described above, the light can include an indicator light that can provide a visual warning to the user when the electronic controller 320 identifies an unsafe operating condition. Similarly, the speaker can output an audible warning when the electronic controller 320 identifies an unsafe operating condition.

[0060] The electronic component 370 can also include one or more switches (e.g., for starting and stopping the operation of the power saw 300), for waking up the power saw, etc.

[0061] In some embodiments, the power saw 300 can include one or more input devices (or input terminals) 390 (e.g., one or more buttons, switches, etc.) that are coupled to the electronic controller 320 and allow the user to select a mode of the power saw 300 (e.g., placing the power saw 300 in a wake-up mode, or otherwise causing the electronic controller 320 to operate the camera 376 to start monitoring for hands in the prohibited area). In some embodiments, the input device 390 includes a user interface (UI) element, such as an actuator, a button, a switch, a dial, a rotary wheel, a touch screen, etc., that enables the user to interact with the power saw 300. As an example, the input device 390 can include a UI element that allows adjustment of the size and / or shape of one or more prohibited areas. For example, the UI element can include a dial, a rotary wheel, a touch screen, etc., that allows the user to adjust the width of the projected area of the prohibited area. In some embodiments, the power saw 300 can produce a visual indication of the size of the projected prohibited area, such as by projecting light onto the working surface of the power saw to indicate the size and shape of the projected prohibited area, or by generating such a visual indication on a display screen.

[0062] In some embodiments, the power saw 300 may include one or more output devices 392 that are also coupled to the electronic controller 320. The output devices 392 may receive control signals from the electronic controller 320 to present data or information to the user in response, or to generate other visual, audio, or other outputs. As an example, the output device(s) 392 may generate visual signals to convey information about the operation or status of the power saw 300 to the user. The output device(s) 392 may include, for example, an LED or a display screen, and may generate various signals that indicate, for example, the operating state or mode of the power saw 300, an abnormal condition or event detected during the operation of the power saw 300, and the like. For example, the output device(s) 392 may indicate the state or condition of the power saw 300, the operating mode of the power saw 300, and the like.

[0063] Now refer to the appended Figure 4 , a flowchart is shown to illustrate the steps of an example method for controlling the operation of a power saw.

[0064] The method includes waking up the power saw, or otherwise initiating the detection of a hand in one or more prohibited areas of the power saw, as shown in step 402. As described above, waking up the power saw may include actuating a UI element (such as a button, switch, etc.) that wakes up the camera of the power saw to capture image data (such as images, videos) of the prohibited area and other working areas within the field of view of the camera.

[0065] Based on the image data collected by the camera, the power saw monitors the working area to detect whether a hand has entered one or more prohibited areas, as shown in step 404. As described in more detail below, the electronic controller of the power saw may receive the image data from the camera and process the image data to detect whether a hand is present in the scene.

[0066] When a hand is detected and recognized as being present within a prohibited area, the power saw will perform one or more safety actions in response to the unsafe operating condition, as shown in step 406. As described above, the safety actions may include generating an audible warning, generating a visual warning, stopping the operation of the saw blade, or a combination thereof.

[0067] Now refer to the appended Figure 5 , a flowchart is illustrated to show the steps of an example method for detecting an unsafe operating condition of a power saw.

[0068] The method includes receiving image data with an electronic controller 320 (such as an electronic processor 330), as shown in step 502. Generally, the image data includes an image or video captured by a camera 376. The image data can be received by the electronic processor 330 from the camera 376. Additionally or alternatively, the image data can be received by the electronic processor 330 from a memory 340. Additionally or alternatively, receiving the image data can include acquiring such data with the camera 376 and transmitting or otherwise delivering the image data to the electronic controller 320.

[0069] The field of view covered by the image and / or video captured by the camera 376 includes at least a portion of one or more prohibited areas. In this way, the image data includes at least a portion of the prohibited area. Figure 6 An example of an image captured by the camera 376 is shown. In the example shown, a first image 602 is captured by a first camera (e.g., camera 110a) in the camera 376, and a second image 604 is captured by a second camera (e.g., camera 110b) in the camera 376. For illustrative purposes, an example of a projected dangerous prohibited area 606 is highlighted in the first image 602, and an example of a projected warning prohibited area 608 is highlighted in the second image 604. A detected hand object 610 (e.g., a bounding box in this example) is also shown in the first image 602.

[0070] In some examples, the image data can be stored for later use as training data for retraining, fine-tuning, or otherwise updating a machine learning model. For example, the image data can be stored in the memory 340 of the electronic controller 320. Then, the image data can be read out from the memory 340 via a wired or wireless connection. For example, a user can connect an external device to the power saw 300 via a wired connection (e.g., a USB cable) and read out the image data from the memory 340. Additionally or alternatively, the image data can be transmitted to an external device and / or a server via a wireless communication device 360. In this way, the image data collected during the operation of the power saw 300 can be used to create a training data set or to supplement an existing training data set. As described below, the image data can be annotated to identify image regions containing hands, and these annotated image data can be stored as part of a training data set.

[0071] Then, as shown in step 504, the trained machine learning model is accessed with the electronic controller 320. Generally, the machine learning model has been trained or is trained on training data to detect hands in the image data. The machine learning model can include one or more neural networks.

[0072] As a non-limiting example, the machine learning model can include a "You Only Look Once" (YOLO) object detection model. Generally, the YOLO model is a one-stage object detection model that divides an input image into a grid and directly predicts bounding boxes and class probabilities. The YOLO model can process the entire image in a single forward pass. As another example, the machine learning model can include a Single Shot MultiBox Detector (SSD) model. Generally, the SSD model is another one-stage object detection model that predicts bounding boxes and class scores at multiple scales. The SSD model can utilize feature maps from different layers to detect objects of varying sizes.

[0073] As another example, the machine learning model can include a Faster Region-based Convolutional Neural Network (Faster R-CNN) model or a Mask R-CNN model. Generally, the Faster R-CNN model is a two-stage object detection model that uses a Region Proposal Network to generate region proposals, followed by a network for object detection. The Mask R-CNN model is an extension of Faster R-CNN that adds an additional branch for pixel-level segmentation, allowing the model to both detect objects and generate detailed masks for each object instance.

[0074] Other object detection models including other one-stage object detection models and / or other two-stage object detection models can also be used to detect hands.

[0075] Accessing a trained machine learning model can include accessing model parameters (e.g., weights, biases, or both) that have been optimized or otherwise estimated by training the machine learning model on training data. In some examples, retrieving the machine learning model can also include retrieving, constructing, or otherwise accessing a specific model architecture to be implemented. For example, data related to the layers in a neural network architecture (e.g., the number of layers, the type of layers, the ordering of layers, the connections between layers, the hyperparameters of the layers) can be retrieved, selected, constructed, or otherwise accessed.

[0076] An artificial neural network generally includes an input layer, one or more hidden layers (or nodes), and an output layer. Generally, the input layer includes as many nodes as there are inputs provided to the artificial neural network. The number (and type) of inputs provided to the artificial neural network can vary based on the specific task of the artificial neural network.

[0077] The input layer is connected to one or more hidden layers. The number of hidden layers varies and can depend on the specific task of the artificial neural network. Additionally, each hidden layer can have a different number of nodes and can be connected to the next layer differently. For example, each node of the input layer can be connected to each node of the first hidden layer. A weight parameter can be assigned to the connection between each node of the input layer and each node of the first hidden layer. Additionally, a bias value can also be assigned to each node of the neural network. In some configurations, each node of the first hidden layer may not be connected to each node of the second hidden layer. That is, there may be some nodes of the first hidden layer that are not connected to all nodes of the second hidden layer. Different weight parameters are assigned to the connections between the nodes of the first hidden layer and the second hidden layer. Each node of the hidden layer is typically associated with an activation function. The activation function defines how the hidden layer processes the input received from the input layer or from the previous input or hidden layer. These activation functions can vary and are based on the type of task associated with the artificial neural network and also based on the specific type of hidden layer implemented.

[0078] Each hidden layer can perform different functions. For example, some hidden layers can be convolutional hidden layers, which can reduce the dimension of the input in some instances. Other hidden layers can perform statistical functions such as max pooling, which can reduce a set of inputs to the maximum value; average layer; batch normalization; and other such functions. In some hidden layers, each node is connected to each node of the next hidden layer, and then it can be called a dense layer. Some neural networks including more than, for example, three hidden layers can be considered deep neural networks.

[0079] The last hidden layer in the artificial neural network is connected to the output layer. Similar to the input layer, the output layer typically has the same number of nodes as the possible outputs. As an example, a machine learning model can output the detected hand data as a bounding box (e.g., the center coordinates of the bounding box, the height of the bounding box, the width of the bounding box). As another example, a machine learning model can output the detected hand data as a cluster of pixels classified as corresponding to the hand (e.g., a mask).

[0080] Then, as shown in step 506, the image data is input into a machine learning model to perform hand detection. For example, the electronic processor 330 may execute instructions for inputting the image data into the ML model 344. As described above, in some embodiments, the electronic processor 330 may include a separate ML processor 334 and / or one or more dedicated AI accelerator cores that can implement the ML model 344. Generally, the machine learning model generates detected hand data as output. As described above, the detected hand data may include a bounding box centered on each detected hand, a mask indicating a cluster of pixels corresponding to the detected hand, and the like. In this way, the electronic processor 330 (or the ML processor 334) uses the ML model 344 to analyze the image data to determine whether a part of a hand is present in the image data. The detected hand data may be stored in the memory 340 or in the memory cache of the electronic processor 330.

[0081] Based on the detected hand data, the electronic processor 330 identifies whether an unsafe operating condition exists by identifying when a hand is present in one or more prohibited regions of the power saw, as shown in step 508. As described above and described in more detail below, an unsafe operating condition may be identified when a hand (as represented by the detected hand data) intersects a prohibited region (as represented by the projected prohibited region). In this way, the electronic processor utilizes the ML model 344 to detect whether a part of a hand is present in the image data and then determines whether the detected hand is in the prohibited region.

[0082] As described above, a two-stage object detection model, such as an optical flow detection model, may be additionally or alternatively used to detect an unsafe operating condition of the power saw. As a non-limiting example, a machine learning model may be used to perform hand detection in step 506, and an optical flow detection model may be additionally used to detect other motions between the image frames of the image data received in step 502. For example, a machine learning model may be used to generate detected hand data in step 506, which is then used to determine whether the user's hand intersects a prohibited region, while an optical flow detection model may be used to generally detect fast-moving objects (or objects) within the image data. In this way, the optical flow model can be used to detect fast motions anywhere in the image frame, which can cover other unsafe operating conditions where injury may occur, such as a hand being pulled into the blade or otherwise towards a prohibited region, material and / or debris being forcefully ejected by the power saw, and / or environmental factors.

[0083] Thus, in some embodiments, an optical flow model can be used to provide an auxiliary layer for detecting unsafe operating conditions, which can additionally be used to prevent harm to the user. Image data is input into the optical flow model to generate optical flow detection data as output. The optical flow detection data can include an optical flow field as described below, or additional data calculated, derived, estimated, or otherwise generated from the optical flow field. As an example, additional data that can be generated from the optical flow field includes images or parameters generated from the optical flow field, such as an image indicating a motion area, a motion mask, an image classifying different motion areas based on displacement and / or velocity, a bounding box of an area containing detected motion, and so on.

[0084] When an unsafe operating condition is identified, as shown in step 510, the electronic processor 330 can generate an unsafe operating condition output. The unsafe operating condition output can include a signal generated by the electronic processor 330 to instruct the electronic controller 320 to control the operation of one or more feedback devices 378, the motor 372 of the power saw 300, or other such signals for controlling the electronic controller 320 to perform a safety action. As described above, in some instances, an unsafe operating condition can be identified based on detecting whether the user's hand has moved into a prohibited area. Additionally or alternatively, an unsafe operating condition can be identified based on the output of an optical flow model indicating object motion within an image frame that could potentially cause harm to the user (e.g., unsafe motion towards the saw blade, unsafe motion of an object ejected from the power saw, unsafe environmental conditions).

[0085] Now refer to Figure 7 , a flowchart is illustrated to set forth the steps of an example method for identifying whether a detected hand is present in a prohibited area of a power saw.

[0086] The method includes receiving sensor data with the electronic processor 330 as shown in step 702. Generally, the sensor data includes data acquired by one or more sensors 374. The sensor data can include inertial sensor data, such as accelerometer data, gyroscope data, magnetometer data, etc. The sensor data can be received by the electronic processor 330 from the sensors 374. Additionally or alternatively, the sensor data can be received by the electronic processor 330 from the memory 340. Additionally or alternatively, receiving the sensor data can include acquiring such data with the sensors 374 and transmitting or otherwise delivering the sensor data to the electronic controller 320.

[0087] As shown in step 704, the sensor data is processed by the electronic processor 330 to estimate the pose of the power saw. The pose of the power saw can include the position of the power saw 300, the orientation of the power saw 300, or both. For example, as Figure 8As shown, the attitude of the power saw 300 can be estimated based on sensor data and known saw geometry. In this way, the electronic controller 310 can receive an indication of the orientation of the saw blade of the power saw 300 from the sensor data received by the sensor 374.

[0088] As shown in step 706, using the estimated attitude of the power saw 300, the electronic processor 330 generates or otherwise determines prohibited area data that defines one or more prohibited areas of the power saw 300. The prohibited area data can include one or more volumes that define one or more prohibited areas of the power saw 300. For example, the prohibited area data can include a first volume that defines a warning prohibited area and a second volume that defines a danger prohibited area. As described above, in a non-limiting example, the warning prohibited area can include a volume that extends through the cut plate of the power saw 300 (e.g., as shown in the example of Figure 1E ). Similarly, in a non-limiting example, the danger prohibited area can include a volume that extends through the cutting plane of the saw blade of the power saw 300 (e.g., as shown in the example of Figure 1F ). As described above, the user can adjust the prohibited area data through one or more UI elements on the power saw 300.

[0089] Then, as shown in step 708, the electronic processor 330 projects the prohibited areas in the prohibited area data onto a 2D plane (e.g., the 2D camera plane). Projecting the prohibited areas onto a 2D plane can include processing the intrinsic and extrinsic parameters of the camera 376. For example, processing the intrinsic parameters can include removing image distortion from the image data (e.g., undistorting the image field of view to a 2D plane when using a fish-eye lens) so that the detected hand data is mapped onto the undistorted camera plane. Processing the extrinsic parameters can include using the estimated attitude of the power saw 300 to determine the position and orientation of the camera 376 in order to project the volume associated with each prohibited area onto the undistorted 2D camera plane.

[0090] Then, as shown in step 710, the electronic processor 330 determines whether the detected hand in the detected hand data intersects one or more of the projected prohibited areas. When the detected hand object (e.g., bounding box, mask, etc.) in the detected hand data intersects the projected prohibited area, the processor 330 determines that an unsafe operating condition exists and will generate an appropriate output for an unsafe operating condition to perform an associated safety action. For example, as shown in Figure 9A , when the detected hand object 902 is recognized as intersecting the warning prohibited area 952, the electronic processor 330 can control the electronic controller 320 to perform a safety action associated with the warning condition (e.g., generating an appropriate audible warning, visual warning, or both). On the other hand, as shown in Figure 9BAs shown, when the detected hand object 902 is recognized as intersecting the hazardous prohibited area 954, the electronic processor 330 may control the electronic controller 320 to perform a safety action associated with the hazardous condition (e.g., stopping the saw blade in addition to generating an appropriate audible warning, visual warning, or both).

[0091] Now referring to Figure 10 , the flowchart is shown as illustrating the steps of an example method for training a machine learning model for hand detection.

[0092] Generally, the machine learning model can implement any number of different model architectures suitable for performing object detection. As a non-limiting example, the machine learning model can be an artificial neural network. The artificial neural network can be implemented as a convolutional neural network, a residual neural network, etc.

[0093] The method includes accessing training data with a computer system, as shown in step 1002. Accessing the training data can include retrieving such data from a memory or other suitable data storage device or medium. Alternatively, accessing the training data can include obtaining such data and transmitting or otherwise delivering the data to the computer system. For example, the training data can include images captured using one or more cameras. As described above, in some examples, the training data can include image data collected during the operation of the power saw 300.

[0094] Generally, the training data can include images each depicting one or more hands. In some embodiments, the training data can include images that have been annotated or labeled (e.g., labeled as containing patterns, features, or characteristics indicating the presence of one or more hands in the image; etc.). As an example, the training data can include annotated images of hands grabbed from a video, such as the 100 Days of Hands (100DOH) dataset. Additionally or alternatively, the training data can include annotated images of the first-person view of the hands of two interacting people, such as the EgoHands dataset. Additionally or alternatively, the training data can include annotated images of hands taken during the operation of the power saw under both safe and unsafe operating conditions. As described above, in some cases, the training data can include an image taken during the operation of the power saw 300, which can be stored in the memory 340 for later use as training data.

[0095] The method may include assembling training data from image data using a computer system. This step may include assembling the image data into a suitable data structure on which a machine learning model can be trained. Assembling the training data may include assembling image data, segmented image data, and other relevant data. For example, assembling the training data may include generating labeled data and including the labeled data in the training data. The labeled data may contain image data, segmented image data, or other relevant data that has been labeled as belonging to or otherwise associated with one or more different classifications or categories. For example, the labeled data may include image data and / or segmented image data that has one or more regions that have been labeled as containing or otherwise depicting a hand.

[0096] Then, as shown in step 1004, a machine learning model is trained on the training data. Generally, a machine learning model can be trained by optimizing model parameters (e.g., weights, biases, or both) based on minimizing a loss function. As a non-limiting example, the loss function can be a mean squared error loss function.

[0097] Training a neural network may include initializing the neural network, such as by computing, estimating, or otherwise selecting initial network parameters (e.g., weights, biases, or both). During training, an artificial neural network receives inputs of training examples and uses the bias of each node and the connections between each node and the corresponding weights to generate an output. For example, the training data can be input into the initialized neural network, and an output is generated as detected hand data. Then the artificial neural network compares the generated output with the actual output of the training example in order to evaluate the quality of the detected hand data. For example, the detected hand data can be passed to a loss function to calculate an error. Then, the current neural network can be updated based on the calculated error (e.g., using a backpropagation method based on the calculated error). For example, the current neural network can be updated by updating network parameters (e.g., weights, biases, or both) in order to minimize the loss according to the loss function. Training continues until a training condition is met. The training condition can correspond to, for example, a predetermined number of training examples being used, a minimum accuracy threshold being reached during training and validation, a predetermined number of validation iterations being completed, etc. When the training condition has been met (e.g., by determining whether an error threshold or other stopping criterion has been satisfied), the current neural network and its associated network parameters represent the trained neural network. Different types of training processes can be used to adjust the bias values and weights of the node connections based on the training examples. The training process can include, for example, gradient descent, Newton's method, conjugate gradient, quasi-Newton, Levenberg-Marquardt, etc.

[0098] One or more different learning techniques can be used based on training data to build or otherwise train an artificial neural network, such as supervised learning, unsupervised learning, reinforcement learning, ensemble learning, active learning, transfer learning, or other suitable learning techniques for neural networks. As an example, supervised learning involves presenting example inputs and their actual outputs (e.g., classifications) to a computer system. In these instances, the artificial neural network is configured to learn general rules or models for mapping inputs to outputs based on the provided example input-output pairs.

[0099] As another example, the machine learning model can be a pre-trained machine learning model, and training the pre-trained machine learning model on training data can include using the training data to re-train, fine-tune, or otherwise update the pre-trained machine learning model. For example, the machine learning model can be a pre-trained neural network that is re-trained to detect hands using transfer learning. In such a case, one or more of the final layers of the neural network can be removed, and the neural network can be re-trained on the training data. Using this method, a pre-trained object detection model (e.g., YOLO object detection model) can be specifically re-trained to detect hands.

[0100] The trained machine learning model is then stored for later use, as indicated at step 1006. Storing the machine learning model can include storing model parameters (e.g., weights, biases, or both) that have been computed or otherwise estimated by training the machine learning model on training data. When the machine learning model is a neural network, storing the trained machine learning model can also include storing the specific neural network architecture to be implemented. For example, data related to the layers in the neural network architecture can be stored (e.g., the number of layers, the type of layers, the ordering of layers, the connections between layers, the hyperparameters of the layers).

[0101] As described above, the trained machine learning model can be stored on the memory 340 of the electronic controller 320 of the power saw 300. For example, the trained machine learning model can be stored on the memory 340 as the ML model 344. The trained machine learning model can be transmitted to the memory 340 via a wired or wireless connection. In some cases, when the power saw 300 is manufactured, the trained machine learning model can be stored on the memory 340. In some other cases, the trained machine learning model can be transmitted to the power saw 300 at some point after the power saw 300 has been manufactured. For example, the trained machine learning model can be transmitted to the power saw 300 as part of the firmware or other update of the power saw 300. The ML model 344 can thus be transmitted (e.g., via the wireless communication device 360, via a wired connection) to the electronic controller 320 and stored on the memory 340. Additionally or alternatively, the updated ML model 344 can be transmitted (e.g., via the wireless communication device 360, via a wired connection) to the electronic controller 320 and stored on the memory 340. The updated ML model 344 can include updated model parameters, an updated model architecture, or a combination thereof.

[0102] Now referring to Figure 11 , a flowchart is illustrated to set forth the steps of an example method for identifying whether an unsafe operating condition of a power saw exists based on processing image data using an optical flow detection model.

[0103] The method includes receiving image data with the electronic controller 320 (e.g., the electronic processor 330), as shown in step 1102. Generally, the image data received in step 1102 can be Figure 5 the same image data received by the electronic controller 320 in step 502 of the method shown. Alternatively, the image data can include additional images or videos captured by one or more cameras, which can include the camera 376 or additional cameras in the work environment. Thus, the image data can be received by the electronic processor 330 of the electronic controller 320 from the camera 376, additional cameras in the work environment, or can additionally or alternatively be received by the electronic processor 330 from the memory 340. Additionally or alternatively, receiving the image data can include acquiring such data with the camera 376 and transmitting or otherwise passing the image data to the electronic controller 320.

[0104] Then, as shown in step 1104, the optical flow detection model is accessed by an electronic controller 320 (such as an electronic processor 330). As will be described, the optical flow detection model processes image data to generate an optical flow field based on which the motion of an object within the field of view of the imaging can be determined. The optical flow model can implement any number of suitable optical flow algorithms, procedures, or methods. As a non-limiting example, the optical flow model can implement the Lucas-Kanade method, the Horn-Shunck method, or a method. In another example, the optical flow model can implement a dense optical flow method, a variational method, a sparse optical flow method, a pyramidal optical flow method, etc. In some implementations, the optical flow detection model can be implemented by a machine learning model different from the machine learning model used for hand detection. For example, the optical flow detection model can include a machine learning model implementing an optical flow algorithm, such as a PWC-Net model, a FlowNet model, etc. In use, the PWC-Net model receives consecutive image frames of the image data as input and generates a corresponding optical flow field as output.

[0105] Then, as shown in step 1106, the electronic processor 330 processes the image data using the optical flow detection model to produce an optical flow field. Generally, optical flow is the pixel displacement between two consecutive image frames. For example, the optical flow can be measured as the apparent motion of an object between two consecutive frames caused by the object itself, other objects in the image frame, and / or the movement of the camera. The optical flow detection model is used to calculate the optical flow field, which is a two-dimensional vector field where each vector is a motion vector showing the movement of a point from the first frame to the second frame. These motion vectors provide information about the displacement and velocity of the motion occurring in the image. Based on this optical flow field, an object moving between the image frames can be detected.

[0106] Then, as shown in step 1108, the electronic processor 330 determines whether there is an unsafe operating condition based on the optical flow field. As a non-limiting example, detecting an unsafe operating condition based on the optical flow field may include processing the optical flow field by the electronic processor 330 to identify whether there is movement between image frames of the image data that may result in an unsafe operating condition. For example, the optical flow field may be processed by the electronic processor 330 to determine whether any motion vectors in the optical flow field indicate that an object is moving towards one of the prohibited areas in the prohibited area of the power saw. When the processor 330 determines that there is an unsafe operating condition, it will generate an appropriate unsafe operating condition output for performing associated safety actions. For example, when the optical flow field indicates that an object is moving towards the warning prohibited area 952, the electronic processor 330 can control the electronic controller 320 to perform safety actions associated with the warning condition (e.g., generating an appropriate audible warning, visual warning, or both). On the other hand, when the optical flow field indicates that an object is moving towards the dangerous prohibited area 954, the electronic processor 330 can control the electronic controller 320 to perform safety actions associated with the dangerous condition (e.g., stopping the saw blade in addition to generating an appropriate audible warning, visual warning, or both). These actions can be performed as a supplement or replacement to the actions performed based on the hand detection-based model implemented in the Figure 7 method.

[0107] As another example, the optical flow field may be processed by the electronic processor 330 to determine whether any motion vectors in the optical flow field indicate that an object is moving away from the power saw at a high speed (e.g., when a piece of material is ejected from the power saw due to a kickback event, etc.). In these cases, the motion vectors can be analyzed to determine whether the displacement direction is towards an area that may be occupied by the user (e.g., behind the saw blade of the power saw or otherwise aligned with the saw blade of the power saw) and whether the speed of the motion is higher than a safety threshold. If an object is moving towards the user at a low rate, there may not be an unsafe operating condition, but if the object is moving at a higher rate where the impact may cause harm to the user, there may be an unsafe operating condition. The electronic processor 330 can then control the electronic controller 320 to perform safety actions associated with the unsafe operating condition (e.g., stopping the saw blade and / or generating an appropriate audible warning, visual warning, or both).

[0108] In other examples, the optical flow field can be processed by the electronic processor 330 to determine whether any motion vectors in the optical flow field indicate an object moving in the environment around the power saw, which may indicate an unsafe operating condition. For example, if the motion vectors in the optical flow field indicate significant movement around a position where the user can safely operate the power saw, an unsafe operating condition can be detected. In such a case, the unsafe operating condition can indicate that the environment around the user may not permit safe operation of the power saw. The electronic processor 330 can then control the electronic controller 320 to perform safety actions associated with the unsafe operating condition (e.g., stopping the saw blade and / or generating an appropriate audible warning, visual warning, or both).

[0109] It should be understood that the present disclosure is not limited in its application to the details of the construction and arrangement of components set forth in the following description or illustrated in the following drawings. The present disclosure is capable of other embodiments and of being practiced or carried out in various ways. Moreover, it should be understood that the language and terminology used herein are for the purpose of description and should not be regarded as limiting. The use of "including", "comprising", or "having" and their variants herein is intended to include the items listed thereafter and their equivalents as well as additional items. Unless otherwise specified or limited, the terms "mounted", "connected", "supported", and "coupled" and their variants are used broadly and include direct and indirect mounting, connection, support, and coupling. In addition, "connected" and "coupled" are not limited to physical or mechanical connection or coupling.

[0110] As used herein, unless otherwise limited or defined, discussions of a particular direction with respect to a particular embodiment or associated description are provided only by way of example. For instance, discussions of "top", "front", or "rear" features generally are intended only as descriptions of the orientation of those features relative to a reference frame of a particular example or illustration. Accordingly, for example, in some arrangements or embodiments, a "top" feature can sometimes be disposed below a "bottom" feature (and so on). Additionally, references to a particular rotation or other movement (e.g., counterclockwise rotation) generally are intended only as descriptions of a movement relative to a reference frame of a particular example illustrated.

[0111] In some embodiments, a computerized implementation that includes a method according to the present disclosure may be implemented as a system, method, apparatus, or article of manufacture that uses standard programming or engineering techniques to produce software, firmware, hardware, or any combination thereof to control a processor device (e.g., any of various combinations of serial or parallel processor chips, single-core or multi-core chips, microprocessors, field-programmable gate arrays, control units, arithmetic logic units, and processor registers, etc.), a computer (e.g., a processor device operatively coupled to a memory), or another electronically-operated controller to implement the aspects detailed herein. Thus, for example, embodiments of the present disclosure may be implemented as a set of instructions tangibly embodied on a non-transitory computer-readable medium such that the processor device may implement the instructions based on reading the instructions from the computer-readable medium. Some embodiments of the present disclosure may include (or utilize) a control device, such as an automation device, a computer including various computer hardware, software, firmware, etc., consistent with the discussion below. As a specific example, the control device may include a processor, a microcontroller, a field-programmable gate array, a programmable logic controller, logic gates, etc., and other typical components known in the art for implementing appropriate functions (e.g., memory, communication systems, power supplies, user interfaces, and other inputs, etc.). Moreover, functions performed by multiple components may be combined and performed by a single component. Similarly, functions described herein as being performed by one component may be performed by multiple components in a distributed manner. Additionally, a component described as performing a particular function may also perform additional functions not described herein. For example, a device or structure “configured” in a certain way is at least configured in that way, but may also be configured in ways not listed.

[0112] As used herein, the term “article of manufacture” is intended to encompass a computer program accessible from any computer-readable device, carrier (e.g., a non-transitory signal), or medium (e.g., a non-transitory medium). For example, computer-readable media may include, but are not limited to, magnetic storage devices (e.g., hard disks, floppy disks, magnetic strips, etc.), optical disks (e.g., compact disks (CDs), digital versatile disks (DVDs), etc.), smart cards, and flash memory devices (e.g., cards, sticks, etc.). Additionally, it should be understood that a carrier may be used to carry computer-readable electronic data, such as those used when sending and receiving e-mails or accessing networks such as the Internet or a local area network (LAN). Those skilled in the art will recognize that many modifications may be made to these configurations without departing from the scope or spirit of the claimed subject matter.

[0113] Certain operations of the methods according to the present disclosure, or certain operations of systems performing these methods, may be schematically represented in the drawings or otherwise discussed herein. Unless otherwise specified or limited, the representation of a particular operation in a particular spatial order in the drawings may not necessarily require that those operations be performed in a particular order corresponding to the particular spatial order. Accordingly, certain operations represented in the drawings or otherwise disclosed herein may be performed in an order different from the order explicitly shown or described, as appropriate for a particular embodiment of the present disclosure. Additionally, in some embodiments, certain operations may be performed in parallel, including by dedicated parallel processing devices or separate computing devices configured to interoperate as part of a larger system.

[0114] As used in a computer-implemented context, unless otherwise specified or limited, the terms "component", "system", "module", etc. are intended to encompass portions or all of a computer-related system that includes hardware, software, a combination of hardware and software, or software in execution. For example, a component can be, but is not limited to, a processor device, a process (or executable) executed by the processor device, an object, an executable file, an execution thread, a computer program, or a computer. As an illustration, both an application running on a computer and the computer can be components. One or more components (or systems, modules, etc.) can reside within a process or execution thread, can be located on one computer, can be distributed between two or more computers or other processor devices, or can be included within another component (or system, module, etc.).

[0115] In some implementations, methods embodying aspects of the present disclosure can be used to utilize or install the devices or systems disclosed herein. Accordingly, descriptions herein of specific features, capabilities, or intended purposes of a device or system are generally intended to inherently include disclosure of methods of using these features for the intended purposes, methods of implementing these capabilities, and methods of installing the disclosed (or otherwise known) components to support these purposes or capabilities. Similarly, unless otherwise indicated or limited, any discussion herein of a method of manufacturing or using a particular device or system, including installing the device or system, is intended to inherently include disclosure of the features utilized and capabilities implemented by such device or system, as embodiments of the present disclosure.

[0116] As used herein, unless otherwise defined or limited, ordinal numbers are used herein for ease of reference and are generally based on the order in which specific components are presented in the relevant portions of the present disclosure. In this regard, for example, designations such as "first", "second", etc. generally only indicate the order in which the relevant components are introduced for discussion and generally do not indicate or require primacy or order of a particular spatial arrangement, function, or structure.

[0117] As used herein, unless otherwise defined or limited, directional terms are used for convenience of reference in discussing particular figures or examples. For example, reference to a downward (or other) direction or a top (or other) position may be used to discuss aspects of a particular example or figure, but a similar orientation or geometry is not necessarily required in all installations or configurations.

[0118] As used herein, unless otherwise defined or limited, the term “and / or” used in conjunction with two or more items is intended to cover the items individually as well as jointly. For example, a device having “a and / or b” is intended to cover a device having a (but not b); a device having b (but not a); and a device having both a and b.

[0119] This discussion is presented to enable a person skilled in the art to make and use embodiments of the present disclosure. Various modifications to the illustrated examples will be readily apparent to those skilled in the art, and the general principles herein may be applied to other examples and applications without departing from the principles disclosed herein. Thus, the embodiments of the present disclosure are not intended to be limited to the embodiments shown, but are to be accorded the widest scope consistent with the principles and features disclosed herein and the appended claims. The following detailed description will be read with reference to the drawings, in which like elements in different drawings have the same reference numerals. The drawings are not necessarily to scale, and they depict selected examples and are not intended to limit the scope of the present disclosure. Those skilled in the art will recognize that the examples provided herein have many useful alternatives and fall within the scope of the present disclosure.

Claims

1. A power saw comprising: At least one camera; Inertial Measurement Unit (IMU) sensors; Saw blades; a motor configured to drive a saw blade; an electronic controller including an electronic processor coupled to the IMU sensor to receive an indication of an orientation of the saw blade from the IMU sensor and to determine an exclusion zone based on the orientation of the saw blade, the exclusion zone corresponding to the saw blade; wherein an electronic processor is coupled to the at least one camera to receive a captured image from the at least one camera, the captured image including at least a portion of a prohibited area, and analyzes the captured image using a machine learning (ML) model to determine whether a portion of a hand is present in the prohibited area; and Wherein, the electronic processor is coupled to the electronic controller to perform a safety action in response to detecting a portion of a hand in the prohibited area.

2. The power saw according to claim 1, wherein: The power saw is a miter saw.

3. The power saw according to claim 1, wherein: The power saw is a table saw.

4. A power saw according to any one of claims 1 to 3, wherein: The safety action includes at least one selected from the following group: controlling a feedback light to generate a visual warning, controlling a feedback speaker to generate an audible warning, and controlling a motor to stop.

5. A power saw according to any one of claims 1 to 4, wherein: The prohibited area includes a warning zone and a danger zone, and the danger zone is smaller than the warning zone.

6. The power saw according to claim 5, wherein: The danger zone is at least partially contained within the warning zone.

7. The power saw according to claim 5, in, In response to detecting that a portion of the hand is in the warning zone, the electronic processor causes the electronic controller to generate a warning to perform a first safety action; as well as Therein, in response to detecting that a portion of the hand is in the danger zone, the electronic processor causes the electronic controller to perform a second safety action.

8. The power saw according to claim 7, wherein: The first safety action includes at least one of controlling a feedback light to produce a visual warning or controlling a feedback speaker to produce an audible warning.

9. The power saw according to claim 7, wherein: The second safety action includes controlling the motor to stop.

10. The power saw according to claim 9, wherein: The second safety action also includes at least one of controlling a feedback light to produce a visual warning or controlling a feedback speaker to produce an audible warning.

11. A power saw according to any one of claims 1 to 10, wherein: The at least one camera includes two cameras.

12. The power saw according to claim 11, wherein: The two cameras include a first camera disposed on one side of the saw blade and a second camera disposed on an opposite side of the saw blade.

13. The power saw according to claim 12, wherein: The first camera and the second camera are arranged close to the saw blade.

14. The power saw according to claim 1, wherein: The device is electronically coupled to the at least one camera to receive the captured image and analyze the captured image using an optical flow detection model to generate optical flow field data to determine the existence of an unsafe operating condition based on motion vectors contained in the optical flow field data, and perform additional safety actions in response to detecting the existence of the unsafe operating condition.

15. The power saw according to claim 14, wherein: The additional safety action includes at least one of controlling a feedback light to generate a visual warning, controlling a feedback speaker to generate an audible warning, and controlling a motor to stop.

16. The power saw according to claim 14, wherein: When at least one motion vector in the optical flow data indicates motion of the object toward the prohibited area, it is determined that an unsafe operating condition exists.

17. The power saw according to claim 14, wherein: An unsafe operating condition is determined to exist when at least one motion vector in the optical flow data indicates that the object is moving from the saw blade at a speed above a safety threshold.

18. The power saw according to claim 14, wherein: An unsafe operating condition is determined to exist when at least one motion vector in the optical flow data indicates an unsafe environmental condition surrounding the powered saw.

19. The power saw according to claim 1, wherein: The electronic controller also includes a memory coupled to the electronic processor, and the ML model is stored on the memory.