for the purposes of promoting an understanding of the principles of the invention , reference will now be made to the embodiment illustrated in the drawings and specific language will be used to describe the same . it will nevertheless be understood that no limitation of the scope of the invention is thereby intended , such alterations and further modifications in the illustrated device , and such further applications of the principles of the invention as illustrated therein being contemplated as would normally occur to one skilled in the art to which the invention relates . referring now to fig1 a diagrammatic illustration of a non - invasive meat grading device 10 according to the present invention is shown . the meat grading device 10 includes an ultrasonic data acquisition instrument 12 , a personal computer 14 , a controller 16 , a remote control operator keyboard or pendent station 18 and a fixture 20 . an ultrasonic transducer ( shown in fig3 a ) is connected to instrument 12 via signal path or multi - conductor cable 22 . motor 26 receives control signals from controller 16 via multi - conductor signal path 24 . similarly , limit switch signals , lvdt ( linear voltage differential transformer ) signals and encoder signals are carried by signal path 28 which is also a multi - conductor cable . the limit switches , lvdt device , and encoder are shown in fig3 a and / or 3b . an ieee 488 or gpib interface 30 provides a data interface between instrument 12 and computer 14 . a parallel interface bus 32 interconnects controller 16 and computer 14 . a serial interface 34 between computer 14 and controller 16 is shown and is typically an rs 232 serial interface . a trigger signal is supplied from controller 16 to instrument 12 via signal path 35 . operationally speaking fixture 20 is located in such a manner that a live animal ( not shown ) or carcass ( not shown ) can be placed in close proximity to the ultrasonic transducer 36 . a rubber boot 38 , attached over the transducer 36 , provides a fluid chamber into which water or other suitable couplant is supplied to provide proper or adequate ultrasonic coupling between the transducer 36 and the live animal or carcass . couplant is supplied to the chamber created by the rubber boot 38 via a hose 40 . pressurized couplant is supplied to a hose 40 from a pressurized source ( not shown ). switches or keypad 42 of controller 16 and switches or keypad 44 of remote control 18 provide operator interface capability for controlling the device 10 in manual mode operation , automatic mode operation , diagnostics mode operation , and calibration mode . switches 42 and 44 provide identical functional capability . basic operation of the entire system or device 10 is orchestrated or synchronized by controller 16 . controller 16 receives setup commands from the operator for automatic operation or scanning of the live animal or carcass , typically a beef or pig . next , the operator initiates scanning of the live animal or carcass . the controller 16 moves the transducer 36 ( via motor 26 ) to a series of predetermined locations and triggers instrument 12 to acquire an ultrasonic a scan . as each a scan is acquired , the instrument 12 processes the a scan signal by digitizing the signal into approximately 8000 bytes of data and altering the data according to predefined software modes of operation present in instrument 12 . when the digitized a scan is processed , the instrument 12 indicates to computer 14 that data is ready , and computer 14 reads the data in over the interface 30 . thus , a most effective use of cycle time is made by analyzing the data as soon as it is available for each scan . if the computer 14 is unable to accept additional data from the instrument 12 , a signal is supplied to the controller 16 to prevent further triggering of the instrument 12 until the most recent a scan data is processed by computer 14 . automatic mode of operation enables execution of predetermined scan plans . the first step in setting up operation in automatic mode is to write , download and debug a scan plan . at the present time , a scan plan is defined as follows : for the first two inches an ultrasonic scan will be performed and digitized every 1 / 8 inch ; for the next two inches a scan will be taken every quarter inch ; and for the final two inches , or until the end of the movement of the transducer , a scan will be performed and digitized every 1 / 8 inch . optionally , a menu selection system enables the operator to select one of several scan plans previously recorded in memory of the controller 16 to execute so that changeover from pork to beef will be as easy as selecting a new menu item . a manual mode of operation permits the operator to move the ultrasonic scanner device anywhere in the scan region and obtain information from the digitized ultrasonic scan . the transducer can be moved in the forward and reverse directions by pressing and holding buttons or switches in the keypad 42 or keypad 44 . when the transducer is at the desired location , the operator can take data by pressing another button . transducer 36 has resolution of movement down to the finest increment that the hardware permits , which is about 0 . 01 inches . in calibration mode the transducer is placed in the fixture and is excited with a known signal . the signal returned will have a peak at a known position . the gain of the instrument 12 is then automatically adjusted to put the peak at the desired level . other calibration setups may require determining time offsets in terms of delay as well as the window of time analysis for the ultrasonic a scan signal . in addition , diagnostics routines will be executed upon power up or upon request from the operator if desired . in automatic mode of operation , certain setup steps must be executed by the operator before commencing automatic operation . for instance , the live animal or carcass number might be entered through the switches or keyboard 44 . the mode of operation of the scanner would also be selected through a menu driven program executing on the computer 14 . finally , the operator may initially desire to move the transducer 36 to a particular starting position using a jog mode activated via the keypad 44 . finally , the operator would press a start button on the keypad 42 or keypad 44 to initiate the scanning . once a live animal or carcass has been positioned in close proximity to transducer 36 and against legs 48 , the operator activates one of the switches of keypads 42 or 44 to commence ultrasonic scanning . at that point , controller 16 triggers instrument 12 via signal path 34 to emit a pulse of ultrasonic energy into the live animal or carcass and analyze or message the reflected ultrasonic signals picked up by transducer 36 . instrument 12 digitizes the reflected ultrasonic signal and analyzes the signal in accordance with previously programmed set up modes . computer 14 is programmed to interrogate instrument 12 and receive data via gpib / ieee 488 bus 30 . computer 14 is continually polling instrument 12 during scanning in order to determine whether data is available concerning a recent ultrasonic a scan . when data is supplied by instrument 12 to computer 14 , computer 14 analyzes the data which is a digitized representation of the ultrasonic signal reflection from the live animal or carcass and the muscle / fat interface layers are detected by analyzing the digitized reflected signal . controller 16 then moves the transducer along the arc of the fixture and triggers instrument 12 again to produce another a scan set of information or data . again the data is supplied via interface 30 to computer 14 for analysis . in this fashion , motor 26 moves the transducer 36 in accordance with signals from controller 16 along the curved member 46 of fixture 20 until a sufficient number of scans has been gathered and , generally speaking , the transducer has moved entirely across the live animal or carcass . when computer 14 is unable to immediately input data from instrument 12 , controller 16 is informed of the delay via the parallel interface 32 or the serial interface 34 and movement of the transducer is momentarily halted until the delay is resolved ( calculations are completed ). computer 14 then determines the area of the longissimus muscle or thickness of the fat layers . longissimus muscle , fat thickness and longissimus muscle depth may individually or in combined fashion be used in a prediction equation to produce a grade or lean content rating of the live animal or carcass . the lean content rating is used to determine live animal or carcass value . additionally , an ultrasound scan of the ham area of a pork animal or carcass and round area of a beef carcass provides additional information for use in a prediction equation to determine animal or carcass lean content and / or value . prediction equations ( such as the following ) have been developed by purdue university research staff and are well known in the livestock industry for predicting &# 34 ; percentage lean content &# 34 ; and &# 34 ; weight of lean &# 34 ; of a pork carcass . these equations are from orcutt et al . journal of animal science , vol . 68 , page 3987 , 1990 , which article is hereby incorporated by reference . ## equ1 ## similar equations are also known for beef and have been adopted by the usda and incorporated into agency standards . the usda equations for beef are : ## equ2 ## the radius of curve member 46 is approximately 8 . 2 inches . this radius permits the transducer to travel in an arch which corresponds closely with the radius of a live animal or carcass as measured from the midline or backbone of the live animal or carcass . further details regarding the location at which ultrasonic scans are executed is presented in conjunction with the discussion of fig4 . the ultrasonic data acquisition instrument 12 is a model 1740 / 1750 mini - c device available from systems research laboratories , inc . a division of arvin / calspan , 2800 indian ripple road , dayton , ohio 45440 . the mini - c device is capable of &# 34 ; massaging &# 34 ; a scan data and rectifying an a scan signal digitally to provide maximum amplitude deviations indicative of tissue interfaces . such massaging occurs when the instrument 12 is programmed to produce &# 34 ; radio frequency &# 34 ; mode data ( see fig1 - 16 ). alternately , instrument 12 produces &# 34 ; rf &# 34 ; scan signals ( see fig1 a - 16a ) which are digitized for analysis . computer 14 is a personal computer which includes hard disk and floppy disk capability , rom , ram , serial and parallel i / o , ieee 488 gpib interface board , at least one meg of ram , and an intel 80286 microprocessor based motherboard including a math coprocessor . computer 14 also includes a monitor , printer , and disk controller board . the transducer shown is a model no . 1ld - 0106 - gp available from technisonic . ultrasonic transducers typically operate in the range of 0 . 5 - 7 . 5 megahertz . this system is designed to operate with a variety of transducers with frequencies ranging from 0 . 5 to 7 . 5 megahertz . referring now to fig2 a more detailed block diagram depicting the components of controller 16 is shown . controller 16 includes power supplies 50 , a motor controller board 52 manufactured by galil ( model no . dmc - 210 ) and a controller board 54 which includes a microcomputer having serial i / o capability , an a / d converter , parallel i / o , rom , and ram . signals and data exchanged between computer 14 of fig1 and controller 16 take place over signal paths 34 and 32 . for example , the voltage from a lvdt ( not shown in fig2 ) is digitized by controller board 54 and supplied to computer 14 via serial interface 34 . switches 42 are monitored by controller board 54 via switch matrix scanning i / o lines in signal path 56 . a lvdt , linear voltage differential transformer , is connected to controller board 54 via signal path 58 . the lvdt , shown in fig3 a , provides linear displacement information or signals to controller 16 , which information is forwarded to computer 14 for use in determining transducer position and calculating longissimus muscle area . thus , when the live animal or carcass does not correspond with the radius of curved member 46 , the lvdt device provides radial position information used to locate tissue interface boundaries and accurately calculate fat thickness and longissimus muscle area . in addition , limit switch signals are supplied from the fixture 20 to controller board 54 via signal path 60 and to the motor controller board 52 . limit switches 74 , shown in fig3 a , prevent over - travel of the transducer with respect to the fixture and are well known in the art for preventing damage to a motor driven device . signals from the rotary encoder 90 , shown in fig3 b , provide displacement information to the controller board 54 and the motor controller 52 via signal path 62 . the signals present on signal path 62 , signal path 60 , and signal path 58 are all represented by signal path 28 in fig1 . pendent station 44 is connected to controller board 54 via signal path 19 as shown in fig1 . also shown in fig2 is a motor driver board 64 from galil model no . icb - 930 . the motor driver board 64 receives power from power supplies 50 and signals from motor controller 52 . motor driver board 64 supplies drive signals to motor 26 to position the transducer properly in relation to the animal carcass along the curved member 46 . power supplies 50 also supply power to driver board 64 and the controller board 54 . referring now to fig3 a and 3b , the fixture 20 according to the present invention is shown . plate 66 is attached to plate 67 . plate 67 is attached to curved member 46 . plates 66 and 67 provide a physical locating point for positioning the live animal or carcass with respect to the fixture 20 . essentially , the live animal or carcass of a pig or beef is positioned so that the split line or midline rests against plates 66 and 67 . in so doing , the live animal or carcass midline or backbone is positioned so that the radial center of curved member 46 corresponds approximately with the location of the midline or backbone of the live animal or carcass . on the top surface of curved member 46 , a chain 68 provides a positive mechanical traction interface between the top surface of curved member 46 and drive motor 26 . a sprocket 70 enables positive mechanical action between the shaft of motor 26 and the chain 68 . legs 48 provide positive locating reference points for the live animal or carcass to rest against when positioned adjacent fixture 20 . connectors 72 provide convenient electrical connection devices for establishing electrical connections between instrument 12 and fixture 20 as well as between controller 16 and the electrical / electronic devices mounted on fixture 20 . electrical connections to fixture 20 correspond with the signal paths and signals carried thereon designated 22 , 24 and 28 in fig1 . limit switches 74 are positioned to prevent overtravel of the transducer mounting 76 with respect to curved member 46 . limit switches 74 are activated by cams 78 near the end of travel limits of the transducer mounting 76 . the transducer mounting 76 is moved along the curved member 46 by drive motor 26 . mechanical attachment means well known in the art enable freedom of movement between the transducer mounting 76 and the curved member 46 so that the transducer mounting 76 may move along the outer arc of curved member 46 in response to rotation of motor 26 . water manifold 80 , shown in more detail in fig1 , is attached to and moves radially with the ultrasonic transducer . the manifold 80 surrounds the tip of the ultrasonic transducer . water manifold 80 provides a conduit for water or other suitable couplant to the area between the transducer and the live animal or carcass to enable ultrasonic signal coupling between the transducer and the live animal or carcass . rubber boot 38 is not shown in fig3 a and 3b , however it is shown in greater detail in fig1 . the mechanical actuator of lvdt 82 is mechanically connected to arm 84 . arm 84 is connected to transducer 36 and moves radially with respect to curved member 46 in conjunction with variations in the radial surface of the live animal or carcass . thus , by way of lvdt 82 , a signal is available indicative of the transducers radial location (&# 34 ; r &# 34 ; of fig4 ) with respect to the live animal or carcass , thereby aiding in &# 34 ; normalizing &# 34 ; the radial location of the transducer with respect to reference coordinate locations to enable calculating fat thickness and longissimus area with a high degree of accuracy . spring 86 urges the transducer , mounted within transducer mounting 76 so that the transducer moves freely in a radial direction , toward the animal or carcass so that the rubber boot 38 is pressing against the live animal or carcass with a light force such as two to three grams . the contact force of the boot against the live animal or carcass helps maintain a reservoir of water or suitable couplant in the area between the transducer and the live animal or carcass to aid in signal coupling between the transducer and the live animal or carcass . hose 40 supplies pressurized water or suitable couplant to the couplant manifold 80 . cable 88 contains the conductors which provide an electrical connection between the transducer 36 and the ultrasonic data acquisition instrument 12 . sprocket 88 is mounted on the shaft of encoder 90 . encoder 90 provides feedback information to the motor controller 52 of fig2 and to the controller board 54 . couplant manifold 80 includes a lip 80a to facilitate a good seal between the boot , shown in fig1 , and the couplant manifold 80 . the miniature incremental rotary optical encoder 90 is a model e116 available from bei motion systems company , computer products division , san marcos , calif . 92069 . the drive motor 26 is a model a - 1430 permanent magnet planetary gear motor available from trw . the lvdt is a mhr series miniature device model number sms / gpm - 109a available from schaevitz , 7905 n . rte . 130 , pennsavken , n . j . 08110 . the motor controller 52 of fig2 enables convenient programming of the motor 26 to move the transducer mounting 76 to a desired scanning position . various motion control systems well known in the art may be substituted therefor . referring now to fig4 a cross section of the curved member 46 is shown in close proximity to a rib / loin area cross - section of a live animal or carcass 92 . the mathematical relationships which are established when the live animal or carcass 92 is positioned appropriately in close proximity with curved member 46 are shown in fig4 . an origin reference point labeled x = 0 , y = 0 provides a reference point from which the calculations are based in conjunction with the radius r whose central axis is located at a point so that the live animal or carcass is appropriately oriented . typically , the radius r is between 5 5 / 8 inches and 6 5 / 8 inches in length . as the transducer 36 is moved along curve a , ultrasound signals are transmitted into the live animal or carcass 92 and the reflections are detected by instrument 12 . the x , y coordinates of the locations pk1 , pk2 , pk3 and pk4 ( corresponding to tissue interface peaks 1 , 2 , 3 and 4 ) are determined according to the formulas shown below which are also shown in fig4 . ## equ3 ## tof is an abbreviation for time - of - flight of the ultrasonic signal and v represents velocity of the ultrasonic signal in the corresponding tissues . subscripts for fat and muscle indicate that time - of - flight and velocity are in fat or muscle for calculating the x and y coordinates of locations pk1 through pk4 . the angle θ is the angle between the midline or y axis and the location of the transducer 36 at any time during the scanning process . as the various peaks ( pk1 - 4 ) are located in each scan , the software executed by computer 14 determines the thickness of the first and second and third fat layers as well as the radial location of the front and rear surface of the longissimus muscle as the transducer 36 moves along the curved member 46 and scans are performed . in so doing , a number of points are obtained or determined which define the area of the longissimus muscle . more particularly , the points at which ultrasound scans are taken are , for example , every 1 / 8 inch along the radius for the first two inches that the transducer 36 moves away from the midline , every 1 / 4 inch for the second two inches along the radius as the transducer moves along the curved member , and every 1 / 8 inch for the last two inches or until the end of travel of the transducer 36 along the curved member 46 . referring now to fig5 a rib / loin area cross section of the live animal or carcass 92 is shown wherein three areas of the longissimus muscle are labelled 92a , 92b , and 92c . these areas are hereinafter referred to as dorsal longissimus muscle area 92a , main longissimus muscle area 92b and ventral longissimus muscle area 92c . the area of the main longissimus muscle area 92b is calculated by determining the area contained within a series of adjacent quadrilaterals defined by peaks pk3 and pk4 and adding the areas together . the areas of the dorsal longissimus muscle area 92a and the ventral longissimus muscle area 92c are approximated in accordance with the following formulas . if the dorsal longissimus muscle thickness ( measured along the inner edge of the dorsal longissimus muscle 92a ) is greater than or equal to 1 . 2 inches , then the longissimus muscle area of the dorsal longissimus muscle is equal to 1 . 44 x ( the loin eye thickness - 1 ) square inches . if the dorsal longissimus muscle thickness is greater than 0 . 5 inches and less than 1 . 2 inches , then the area of the dorsal longissimus muscle 92a equals 0 . 41 x ( the loin thickness - 0 . 21 ) square inches . if the dorsal longissimus muscle thickness is equal to or less than 0 . 5 inches then the area for the dorsal longissimus muscle area 92a is 0 square inches . the ventral longissimus muscle area 92c is calculated according to the following formulas . if the ventral longissimus muscle thickness ( measured along the inner edge of the ventral longissimus muscle 92c ) is greater than or equal to 1 . 7 inches , then the longissimus muscle area is equal to 2 . 2 x ( the longissimus muscle thickness - 3 . 3 ) square inches . if the ventral longissimus muscle thickness is greater than 0 . 5 inches and less than 1 . 7 inches then the longissimus muscle area for the ventral longissimus muscle equals 0 . 36 x ( the longissimus muscle thickness - 0 . 18 ) square inches . if the ventral longissimus muscle thickness is less than 0 . 5 inches , then the area for the ventral longissimus muscle is considered to be 0 square inches . referring now to fig6 a quadrilateral is shown with the four sides , diagonals and intersection points of the sides labeled for convenience . in accordance therewith , the following formulas are used to determine the area contained within a particular quadrilateral . the points which are known defining the various quadrilaterals which make up the main longissimus muscle area 92b ( the pk3 and pk4 points determined during scanning ) are used to define quadrilaterals whose areas summed together define the total area of the main longissimus muscle 92b with high precision . ## equ4 ## where p =( xt 1 - xb 0 ) 2 +( yt 1 - yb 0 ) 2 , c =( xb 0 - xb 1 ) 2 +( yb 0 - yb 1 ) 2 , and referring now to fig7 a flow chart for the program executed by computer 14 which determines tissue interface locations and corrects erroneous data to provide an accurate measurement of fat thickness and longissimus muscle area according to the present invention is shown . at step 150 , if the command received by the program is a 1 , then program execution continues at step 152 where the program reads the data from the instrument 12 to determine tissue interface locations . after step 152 program execution continues at step 154 . if the answer to the inquiry at step 150 is no , program execution continues with step 154 . at step 154 , if the command received is 2 , then at step 156 the interface locations for certain scans are analyzed and erroneous data or artifacts are corrected . if at step 154 the command is not 2 then program execution continues with step 158 . if at step 158 the command received is a 3 , then the tissue records are cleared from memory at step 160 . referring now to fig8 a more detailed flow chart for the read data and determine tissue interfaces of step 152 of fig7 is shown . the approach taken in the software is to determine the location of the back of the rib or loin and work towards the location of the transducer in determining the tissue interface locations . the data received from instrument 12 by computer 14 includes a scan number which is a serialized number attached to and incremented with each group of data bytes defining a scan , wherein each of the digitized scans includes approximately 8 , 000 bytes of data . at step 180 in fig8 the scan number or a scan number is obtained , and the table of a scan numbers is searched for duplicates at step 182 . following step 182 , at step 184 , if the current a scan number is a number that has not been previously used for a recent scan already received , then the a scan counter and index is updated at step 186 after step 184 . if the test at step 184 is false , then program execution continues with step 188 . program execution continues at step 188 following step 186 also . at step 188 , the a scan data points corresponding to the a scan number obtained in step 180 are read in over the ieee 488 interface 30 by computer 14 . subsequently at step 190 the a scan data is divided into approximately 300 groups of 25 data points per group . next , for each group determined in step 190 a mean is calculated at step 192 . next at steps 194 and 196 , a loop is executed for the groups of data numbered 1 through 150 to determine the last occurrence of a peak mean value above 150 ( or any other predetermined peak value ). subsequently at step 198 , the beginning of the connective tissue is determined to be the minimum that precedes the last peak greater than 150 detected in the loop of steps 194 and 196 . following step 198 , the entry time into the muscle region is determined to be the beginning of the connective tissue at step 200 . after step 200 , a loop is executed at steps 202 and 204 for the last 150 data groups which are comprised of 25 points per group , to determine the earliest occurrence of a peak above a predetermined value or 138 at step 204 . the loop of steps 202 and 204 executes 150 times with the last 150 groups of data . after the 150th execution of the loop , program execution continues at step 206 wherein the exit time i . e . the time at which the signal crosses the back of the muscle is determined to be the earliest peak which is greater than 138 . next at step 208 , the end of the muscle region is set equal to the exit time which is the point in time at which the earliest peak above 138 was detected at step 206 . subsequently a return is executed to the calling routine . referring now to fig9 a more detailed flow chart for the &# 34 ; correct erroneous data points &# 34 ; step 156 of fig8 is shown . artifacts and data readings out of reasonable limits are corrected by this routine . for example , if location b of fig1 is not properly located by the software algorithm of fig8 or 10 , then adjacent scan data ( from fig1 as an examplary adjacent scan ) is used to establish an adjusted or corrected location for location b in fig1 . at step 220 , the total a scans which have been stored are sorted by scan number using a bubble sort routine well known to those skilled in the art of programming . next at step 222 , a cluster value is determined for the &# 34 ; entry times &# 34 ; corresponding to scan number 5 through scan number 8 using a &# 34 ; k - means &# 34 ; routine which is well known to those skilled in the art . in particular , the k - means routine will provide a center value for a cluster of points in an x - y coordinate plane . thus , a center value is calculated for the entry times determined in scans numbered 5 through 8 using the routine in step 222 . subsequently in step 224 if the &# 34 ; entry time &# 34 ; for scan 5 minus the &# 34 ; entry cluster center value &# 34 ; is greater than a predetermined limit then the &# 34 ; entry time &# 34 ; for scan 5 is set equal to the &# 34 ; entry cluster center value &# 34 ; at step 226 . if the conditional at step 224 is not satisfied then program execution continues with step 228 . next , at step 228 the &# 34 ; exit times &# 34 ; for scan numbers 5 through 8 are clustered using the &# 34 ; k - means &# 34 ; algorithm as was done in step 222 for the entry times . subsequently at step 230 if the &# 34 ; exit time &# 34 ; for scan number 5 minus the &# 34 ; exit cluster center value &# 34 ; calculated at step 228 is greater than the predetermined limit of step 224 then the &# 34 ; exit time &# 34 ; for scan number 5 is set equal to the &# 34 ; exit cluster center value &# 34 ; at step 232 . if the result for the conditional in step 230 is &# 34 ; no &# 34 ; then program execution continues at step 234 . at step 234 a do - while loop including steps 236 and 238 is executed while the a scan number is equal to 6 and less than or equal to the total number of a scans received from the instrument 12 . at step 236 if the entry time for the next a scan minus the entry time for the present a scan is greater than a predetermined limit then the entry time for the next a scan is set equal to the entry time of the present a scan . the counter &# 34 ; a &# 34 ; is a counter for establishing the subscript in steps 236 and 238 corresponding to the scan number of interest determined in step 234 . the scan number is incremented each time through the loop of step 234 and 236 so that all adjacent scan entry times are compared with one another . if at any time the condition in step 236 is satisfied , then the entry time for the next scan is set equal to the entry time for the present scan number . once scan numbers 6 through the last scan number have been processed in the do - while loop of step 234 , then program execution will continue with step 240 wherein a do while loop consisting of steps 242 and 244 perform a similar task as steps 234 through 238 with regard to the exit times for adjacent scans in the scans numbered 6 through the last scan . at step 242 if the exit time for the next adjacent scan minus the exit time for the present scan is greater than a predetermined limit then the exit time for the next scan is set equal to the exit time for the present scan at step 244 . after step 244 program execution returns to step 240 where the do - while loop causes the scan number to increment by 1 until the last scan number is encountered . when the last scan number is encountered at step 240 then program execution continues with step 246 wherein the entry and exit times which are determined and revised by this routine are returned to the database , and the tissue records are updated at step 248 . program execution then returns to the calling routine . referring now to fig1 , an alternate embodiment for step 152 &# 34 ; read data and determine tissue interfaces &# 34 ; of fig7 is shown . in this embodiment , the tissue interface locations or coordinates are determined according to an alternate algorithm . at step 250 the a scan number is requested from instrument 12 over the ieee 488 interface 30 by the computer 14 . instrument 12 responds with a scan number . at step 252 the computer 14 searches the table of a scan numbers in memory for duplicates . at step 254 if the current a scan number has not been previously used , then step 256 is executed and the a scan counter is updated as well as an index counter in memory . if at step 254 the a scan number is not previously used , then program execution continues at step 258 wherein the computer 14 reads in the a scan data points from instrument 12 over the ieee 488 interface 30 . subsequently at step 260 the a scan data is divided into 300 groups consisting of 25 points per group . next , at step 262 , the mean value of each group determined in step 260 is calculated . thereafter at steps 264 and 266 , for group numbers 1 through 150 , the latest occurrence of a peak mean value greater than 150 is determined . after the loop of steps 264 and 266 has fully executed for group numbers 1 through 150 , then step 268 executes next . at step 268 , the beginning of the connective tissue is determined in accordance with the time of occurrence of the group mean value determined for group numbers 1 through 150 , which is the minimum mean value that first precedes the last peak determined in step 266 . next at step 270 the entry time into the muscle region is set equal to the beginning of the connective tissue time determined in step 268 . next at step 272 , the 300th mean value is stored as the first peak value . subsequently at step 274 the 299th group mean value is stored as the second peak value . after step 274 , a loop consisting of steps 276 through step 288 executes for group numbers starting with 300 and working the loop counter increment value down to group number 150 . at step 278 a current group mean value is compared with adjacent mean values to determine whether or not a peak is present or has been determined . once a peak is acquired or found at step 278 , then at step 280 the peak is compared with the peak values from steps 272 and 274 . if the peak is greater than both current peaks then step 282 executes and the smaller peak is replaced with the peak acquired in step 278 . if the conditional at step 280 is not satisfied then step 284 is executed wherein if the peak acquired in step 278 is greater than one of the two current peaks then step 286 executes and the smaller of the two peaks determined in step 272 and step 274 are replaced by the peak acquired in step 278 . if the conditional in step 284 is not satisfied , then the peak acquired in step 278 is discarded in step 288 . program execution continues at step 276 following steps 282 , 286 and 288 . the loop consisting of steps 276 through 288 will execute for group numbers 300 down to 150 . program execution then continues with step 290 wherein the &# 34 ; end of the rib / loin &# 34 ; time period is determined according to the position of the latest current peak in the group of mean values calculated for the data . the position of this value corresponds to a time of flight of the ultrasonic signal , and thus corresponds directly with the thickness of the muscle or fat region which has been determined in accordance with the end of the rib / loin tissue interface location . after step 292 , the exit time is determined in accordance with the other current peak or the second peak value which results from the loop of steps 276 through 288 . after step 292 , program execution returns to the calling routine . referring now to fig1 , an enlarged partial view of the transducer 36 with the rubber boot 38 installed over the transducer / couplant manifold assembly is shown . water or other couplant supplied to the couplant manifold 80 via hose 40 is supplied internally through manifold 80 into the void 94 and fills void 94 so that a coupling fluid is present between transducer 36 and the live animal or carcass 92 . the lip 38a of the cylindrical boot 38 provides a fluid seal with the live animal or carcass when slight pressure is applied downward on the boot by the spring 86 shown in fig3 a . ring 80a of couplant manifold 80 provides an enlarged diameter area wherein a fluid seal is formed with boot 38 to define the void or chamber 94 and maintain water therein . referring now to fig1 - 16 and fig1 a - 16a , &# 34 ; full video &# 34 ; and corresponding &# 34 ; rf &# 34 ; ultrasound signals produced by the instrument 12 and digitized for subsequent analysis by computer 14 for locations 1 inch through 5 inches away from the midline are respectively shown . in each of the graphical representations of the signals , the front of the longissimus muscle is indicated by the letter a and the rear of the longissimus muscle is indicated by the letter b . in addition , the back of the rib / loin is represented by the peak at locations c . finally , an interface between the first and second fat layers is indicated at locations d . these peaks or tissue interface locations are the primary location indicators used by the device 10 in determining tissue interface locations and calculating tissue thicknesses and longissimus muscle areas . it is not uncommon for a third fat layer to be present in the live animal or carcass and normally that layer is evidenced by a peak at location e . however , in the present figure , that third fat layer is not present and the peak does not appear . additionally , the most important interface boundaries that are detected are the a and b locations which define the front and rear of the longissimus muscle . these points are crucial in determining the area of the muscle with high accuracy . referring now to fig1 , an rf scan produced by instrument 12 for a live pork or pork carcass is shown . the tissue interface boundaries are more easily located in this graphical depiction as a result of refinements in the calibration and setup of the device 10 . locations a and b define the longissimus muscle boundaries . location c is the back of the rib / loin . location d is the interface between the first and second fat layers . further , location e is the interface between the second and third fat layers . fig1 is one example of the additional fat layer which is occasionally present and detected . it should be noted that an rf or full video scan signal is identical for a live pork or corresponding carcass . referring now to fig1 , an rf scan produced by instrument 12 for a live beef or beef carcass is shown . the tissue interface boundaries are more easily located in this graphical depiction as a result of refinements in the calibration and setup of the device 10 . locations a and b define the longissimus muscle boundaries . location c is the back of the rib / loin . location d is the interface between the first and second fat layers . location f is the interface between the animal hide and the first fat layer . it should be noted that an rf or full video scan signal is identical for a live beef or corresponding carcass . an alternate approach utilizing multiple transducers arranged in a plane would produce a similar result as device 10 . analog multiplexers would switch each transducer to the instrument 12 to produce the multiple scans necessary for full analysis of the animal or carcass . with a multiple transducer approach , motors and position feedback hardware would not be needed . a 8 - page listing of the software corresponding to the flow chart of fig8 is included after the end of the description of the preferred embodiment and is titled alg -- interfaces . c . in addition , a 2 - page listing of a program written in the programming language c for the k - means calculation routine is also included . in view of the description of the present invention and its capability to accurately determine fat thickness and loin eye area , it is believed that improved correlation with actual lean content is achieved as compared with prior art systems which use estimates of area and fat thickness . while the invention has been illustrated and described in detail in the drawings and foregoing description , the same is to be considered as illustrative and not restrictive in character , it being understood that only the preferred embodiment has been shown and described and that all changes and modifications that come within the spirit of the invention are desired to be protected . ## spc1 ##
a non - invasive apparatus and method for measuring fat thickness or content and muscle depth or area parameters grading meat and animals are disclosed . the device includes an ultrasonic transducer and analyzer device which provides a scan information in digitized form . a separate controller moves the ultrasonic transducer along a predetermined path adjacent an animal or carcass while a scans are obtained at predetermined locations along the path . the a scans are digitized and analyzed to determine the tissue interface boundaries . equations are implemented to determine the area of the longissimus muscle and fat tissue thicknesses and a lean content rating for the animal may be determined therefrom . modeling techniques are also used to estimate certain portions of the area of the longissimus muscle of the animal or carcass based upon data gathered during the ultrasound scanning of the carcass . scanning of the ham area and round using the ultrasonic scanner is also suggested to add increased reliability to the data obtained from scanning the rib or loin eye area when used in conjunction therewith in a leanness prediction equation .