Focus and Shoot P=P(90,d).If the power Pb is not large enough,the reader increases the power by AP and identifies no tags,as shown in Algorithm 1.It repeats the above process until n>n,which means that it has collected enough tag IDs N =[ID1,ID2,...,IDn}from the boundary.However,if the reader's power has achieved to the maximum value marP,n is still less than ne,which indicates most of the interference tags are far away from S.Then,the reader stops the process and gets the optimal power P=marP.After that,the antenna rotates towards the center of S for power stepping and tag identification. Algorithm 1:PID:Establishing the boundary Input:The specified area S Determine the boundary Se of S by the 3D camera,and calculate do and ds. The antenna rotates to s witharccos(). Prb=Pmin(90°,d),Pw=Pcb,nb=0. while nb<ne and Pw marP do Collect tag IDs with P and get nb responses. if P=maxP and n<ne then p=maxP,Return. Pe=min(Pn+△Pe,mazPw) Get the tag IDs N ={ID1,ID2,...,ID}. Output:Tag IDs in the boundary:N Power stepping If P has not been determined,the reader will adjust the power through power stepping.Firstly,the reader chooses an initial power Ps= P(0,d)according top and do,where=90-and d=d.It is a critical value in theory,whose interrogation region just achieves the boundary of S. However,as shown in Fig.2(e),the tag size can affect the effective interrogation region,Ps may not be the most reasonable power.Thus we properly adjust the power by checking the tag IDs in No,as shown in Algorithm 2. Algorithm 2:PID:Power Stepping Input:Tag IDs in No Pws=Pwmn(0r,d)=Pwmin(90°-p,d6),Pw=Pes Check the tag IDs in No and get ne responses Ne. if =6 then P=Ps. if e>6 then while P>minPu do P max(Pu -APw,minP). Check IDs in Ne,get△ne responses,ne=△nc if "s then Pi=P.Break. if路<6then while P<maxP do Pw=min(Pu+△Pu,max P). Check IDs in N-Ne,get Ane responses,ne ne+Ane. ift≥6 then P=Pw,Break. Output:The optimal power P In the commercial RFID systems,the reader (eg.Alien-9900+)selects a specified tag by setting the mask equal to the tag ID.If the tag gives response,the reader gets a nonempty slot.Otherwise,it gets an empty slot.The reader checksFocus and Shoot 7 Pwb = Pwmin (90◦ , d). If the power Pwb is not large enough, the reader increases the power by ∆Pw and identifies nb tags, as shown in Algorithm 1. It repeats the above process until nb ≥ nε, which means that it has collected enough tag IDs Nb = {ID1, ID2, . . . , IDnb } from the boundary. However, if the reader’s power has achieved to the maximum value maxPw, nb is still less than nε, which indicates most of the interference tags are far away from S. Then, the reader stops the process and gets the optimal power P ∗ w = maxPw. After that, the antenna rotates towards the center of S for power stepping and tag identification. Algorithm 1: PID: Establishing the boundary Input: The specified area S Determine the boundary Sb of S by the 3D camera, and calculate db and ds. The antenna rotates to Sb with φ = arccos( ds db ). Pwb = Pwmin (90◦ , db), Pw = Pwb, nb = 0. while nb < nε and Pw < maxPw do Collect tag IDs with Pw and get nb responses. if Pw = maxPw and nb < nε then P ∗ w = maxPw, Return. Pw = min(Pw + ∆Pw, maxPw). Get the tag IDs Nb = {ID1, ID2, . . . , IDnb }. Output: Tag IDs in the boundary: Nb Power stepping If P ∗ w has not been determined, the reader will adjust the power through power stepping. Firstly, the reader chooses an initial power Pws = Pwmin (θr, d) according to φ and db, where θr = 90◦−φ and d = db. It is a critical value in theory, whose interrogation region just achieves the boundary of S. However, as shown in Fig. 2(e), the tag size can affect the effective interrogation region, Pws may not be the most reasonable power. Thus we properly adjust the power by checking the tag IDs in Nb, as shown in Algorithm 2. Algorithm 2: PID: Power Stepping Input: Tag IDs in Nb Pws = Pwmin (θr, d) = Pwmin (90◦ − φ, db), Pw = Pws. Check the tag IDs in Nb and get nc responses Nc. if nc nb = δ then P ∗ w = Pws. if nc nb > δ then while Pw > minPw do Pw = max(Pw − ∆Pw, minPw). Check IDs in Nc, get ∆nc responses, nc = ∆nc. if nc nb ≤ δ then P ∗ w = Pw, Break. if nc nb < δ then while Pw < maxPw do Pw = min(Pw + ∆Pw, maxPw). Check IDs in Nb − Nc, get ∆nc responses, nc = nc + ∆nc. if nc nb ≥ δ then P ∗ w = Pw, Break. Output: The optimal power P ∗ w In the commercial RFID systems, the reader (eg. Alien-9900+) selects a specified tag by setting the mask equal to the tag ID. If the tag gives response, the reader gets a nonempty slot. Otherwise, it gets an empty slot. The reader checks