{'fraction_non_alphanumeric': 0.0288480635551142, 'fraction_numerical': 0.008291956305858987, 'mean_word_length': 4.8754375729288215, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
X-Vision: An augmented vision tool with real-time sensing ability in tagged environments

We present the concept of X-Vision, an enhanced Augmented Reality (AR)-based visualization tool, with the real-time sensing capability in a tagged environment. We envision that this type of a tool will enhance the user-environment interaction and improve the productivity in factories, smart-spaces, home&office environments, maintenance/facility rooms and operation theatres, etc. In this paper, we describe the design of this visualization system built upon combining the object's pose information estimated by the depth camera and the object's ID&physical attributes captured by the RFID tags. We built a physical prototype of the system demonstrating the projection of 3D holograms of the objects encoded with sensed information like water-level and temperature of common office/household objects. The paper also discusses the quality metrics used to compare the pose estimation algorithms for robust reconstruction of the object's 3D data.


I. INTRODUCTION
Superimposing information on to the real-world, the concept commonly known to us as Augmented reality (AR), has been rapidly evolving over the past few years due to the advances in computer vision, connectivity and mobile computing. In recent years, multiple AR-based applications have touched everyday lives of many of us: few such examples are Google translate's augmented display [1] to improve productivity, AR GPS navigation app for travel [2], CityViewAR tool for tourism [3], etc.
All these applications require a method to implement a link between the physical and digital worlds. Often this link is either ID of the object or information about the physical space, for instance, an image in Google translate app or GPS location in AR navigation tool. This link can be easily established in a informationally structured environments using visual markers, 2D barcodes and RFID tags. Among the three, RFID tags have an unique leverage with the ability to wirelessly communicate within couple of meters of distance without requiring line of sight access. In addition, RFID tags can be easily attached to inventory and consumer products in large numbers at extremely low per unit costs. Passive RFID, in particular, has many applications in object tracking [4], automatic inventory management [5], pervasive sensing [6], etc. In a tagged environment, with RFID infrastructure installed, information of tagged object's ID and physical * Equal Contribution attributes can be wirelessly retrieved and mapped to a digital avatar.
In this paper, we have designed a visualization framework called X-Vision, hoping to equip users with the ability to directly see the physical attributes of surrounding objects ( Figure  1). One of the goals of this framework is to demonstrate the advantages of tagged environments to enhance the userenvironment interaction with real-time sensing at low cost for potential use cases in smart-spaces, home & office environments, maintenance/facility rooms and operation theatres, etc. The rest of the paper is structured as follows: Section II discusses the relevant work in fusion of other technologies with RFID and AR; Section III provides the details of the proposed framework and the visualization system; Section IV discusses the evaluations of the test experiments, followed by the conclusions in Section V.

A. AR-Based Smart Environment
AR brings digital components into a person's perception of the real world. Today, advanced AR technologies facilitates the interactive bidirectional communication and control between a user and objects in the environment. Two main branches exist for AR associated research. In one branch, researchers attempt to design algorithms to achieve accurate object recognition and 3D pose estimation for comprehensive environment understanding. Related work in this direction can be found in [7], [8] for object recognition, and in [9], [10], [11] for 3D data processing. Research in this direction provides theoretic supports for industry products. In the other branch, arXiv:1806.00567v2 [cs.HC] 25 Nov 2018 efforts have been devoted to applying existing computer vision techniques to enhance user-environment interaction experience for different purposes. Research work on this track benefits areas, such as education [12], tourism [13] and navigation [14], by improving user experience. Our work follows this trend by fusing object recognition and 3D pose estimation techniques with RFID sensing capabilities, aiming to create a smart environment.

B. Emerging RFID Applications
RFID is massively used as identification technology to support tracking in supply chain, and has so far been successfully deployed in various industries. Recently industry's focus seems shifting towards generating higher value from the existing RFID setups by tagging more & more items and by developing new applications using tags that allow for sensing, actuation & control [15] and even gaming [16]. Another such exciting application with industrial benefit is fusion with emerging computer vision and AR technologies. Fusion of RFID and AR is an emerging field and there are recent studies combining these technologies for gaming and education, yet we see lot of space to explore further especially going beyond ID in RFID. One of the earlier papers [17] studied the use of RFID to interact with physical objects in playing a smartphone-based game which enhanced the gaming experience. Another study [18] used a combination of smart bookshelves equipped with RFID tags and mixed-reality interfaces for information display in libraries. Another study [19] explores the use of AR with tags to teach geometry to students. These studies show a good interest in the community to explore mixed reality applications using tags for object IDs. In this paper, we use RFID for not just ID but also to wirelessly sense the environment and object's attributes to create a more intimate and comprehensive interaction between the humans and surrounding objects.

III. SYSTEM
Our system (hardware and visualization shown in Fig. 1) contains two parallel branches (shown in Figure 2) to concurrently detect and sense RFID tag-sensor attached objects. On one side, the system captures color and depth images using the depth camera for in-view target object identification and pose estimation. On the other side, the system collects tagdata reflecting the target object's physical properties, such as temperature, using an RFID interrogator\reader. Information collected from both sources are uploaded to a shared central server, where heterogeneous information is unified and delivered to the HoloLens for augmented visualization. Details are given in the following subsections.

A. Object Identification and Pose Estimation
Our system uses an Intel RealSense D415 depth camera to capture color and depth information. It is attached to an HoloLens via a custom mount provided by [20], and faces in the same direction as the HoloLens (Figure 1). The captured images are used to identify the in-view target object and estimate its pose. Object Identification: Object recognition is a well-studied problem, and we adopt the local feature based method [8] in our system, since it is suitable for small-scale database. Generally, to identify an in-view object from a given database, the local feature based method first extracts representative local visual features for both the scene image and template object images, and then matches scene features with those of each template object. The target object in the view is identified as the template object with the highest number of matched local features. If the number of matched features of all template objects is not sufficiently large (below a predetermined threshold), then the captured view is deemed to not contain a target. Our system follows this scheme, and uses SURF algorithm [8] to compute local features, since compared to other local feature algorithms, such as SIFT [21], SURF is fast and good at handling images with blurring and rotation. Pose Estimation: After identifying the in-view object, our system estimates its position and rotation, namely 3D pose, in the space, thus augmented information can be rendered properly. We achieve this by constructing point cloud of the scene, and aligning the identified object's template point cloud with it. Many algorithms exist for point cloud alignment, and we adapt widely-used Iterative Closest Point (ICP) algorithm [22] in our system, since it usually finds a good alignment in a quick manner. To obtain better pose estimation results, especially for non-symmetric objects (i.e. mug), a template object usually contains point clouds from multiple viewpoints. Yet, the performance of ICP relies on the quality of the initialization. Our system finds a good initial pose by moving a template object's point cloud to the 3D position that is backprojected from the centroid of matched local feature coordinates in the scene image. The coordinates of correctly matched local feature are the 2D projections of target object surface points, thus back-projecting their centroid should return a 3D point close to target object surface points. After initializing the pose of template point cloud, our system refines its pose using ICP. Finally, the estimated pose can be represented as a 4 × 4 matrix, M pose = M ini M icp , where M ini is the transformation matrix for pose initialization, and M icp is the transformation matrix for pose refinement using ICP. All the transformation matrix are in the format of , where R is a 3×3 matrix representing rotation, and t is a 3×1 vector representing translation. Related details are illustrated in [23].

B. RFID Sensing
An office space already equipped with the RFID infrastructure is used as the tagged-environment for the experiments in this study. The space is set up using the Impinj Speedway Revolution RFID reader, connected to multiple circularly polarized Laird Antennas with gain of 8.5 dB. The reader system is broadcasting at the FCC maximum of 36 dBm EIRP. For the tag-sensors, we make use of the Smartrac's paper RFID tags with Monza 5 IC as the backscattered-signal based water level sensors and custom designed tags with EM 4325 IC as the temperature sensors. We use the Low Level Reader Protocol (LLRP) implemented over Sllurp (Python library) to interface with RFID readers and collect the tag-data.
Purely-passive or semi-passive tags can be designed to sense multiple physical attributes and environmental conditions. One approach is based on tag-antenna's response to changed environments as a result of sensing event. Change in signal power or response frequency of the RFID tag due to this antenna's impedance shift can be attributed to sensing events like temperature rise [24], presence of gas concentration [25], soil moisture [26] etc. Another approach is to use IC's on-board sensors or external sensors interfaced with GPIOs [27]. In this study, we use both the antenna's impedance shift approach to detect water-level and the IC's on-board temperature sensor to detect the real-time temperature in a coffee cup. Water Level Sensing: Water-level sensor works on the concept of relating the detuning of the tag's antenna in the presence of water in the neighborhood of the tag. In this study, we used tags as the water-level sensors on common household/office objects such as coffee cup made of paper, ceramic mug and plastic bottle. In an empty state, the background dielectric for the tags is air, therefore, the backscattered signal strength from the tags is at the maximum. In the state where the mug contains water, the antenna is significantly detuned due to the change in background dielectric, as a result the tag becomes unresponsive. However, when the mug is emptied the tag can be read again indicating empty cup. We build on this concept to detect discrete levels of water in the container by using three tags to define states as empty, low, mid, and high (illustrated in Table I). Fig. 3(a) shows the level sensor labels implemented on a standard ceramic coffee mug. Temperature Sensing: Temperature sensor is implemented by using EM Microelectronics's EM 4325 with on-board temperature as the RFID IC. Fig. 3(b) shows a T-match antenna with EM 4325 IC and a button-cell battery implemented as a temperature sensor on a standard coffee cup. Temperature measurements from this IC can be made in both passive as well as semi-passive mode. In the passive mode, the tag has to be in range of a reader antenna. In the semi-passive mode, the battery or external energy source keeps the IC on. The IC's temperature measurement is triggered by writing any random information into the specific word of the user memory bank (Memory bank:3 and Wordptr:256). The IC updates this word with the measured temperature from the on-board temperature sensor. By reading the word again current temperature can be known. We have implemented this code using the Sllrup library. Real-time temperature sensing is possible using this IC within −64 o to 64 o Celsius.

C. Augmented Visualization
After obtaining the target object's identity, pose and physical properties, the system superimposes augmented information (i.e. CAD model) onto the object. Since the object's 3D pose is estimated in the depth camera coordinate system, a series of transformations are required to obtain the 3D pose in the world coordinate system, which is required in the HoloLens rendering system. Our system computes the transformation using: maps the pose from the depth camera coordinate system to the HoloLens coordinate system, and T world HoloLens maps the pose from the HoloLens coordinate system to the world coordinate system. All the transformation matrices are in the same format as those described for pose estimation.

A. Sensing Results Visualization
We first test our system's performance on both water level sensing and temperature sensing. A user's augmented views are recorded and shown to demonstrate the effectiveness of the proposed system.
We present water level sensing results for both single object and multiple objects cases (Figure 4). The system projects 3D CAD models of identified objects into the scene according to their estimated poses. The color of projected 3D models is changed at different heights to reflect different water levels. As can be observed, our system properly aligns 3D models to corresponding target objects, even for non-symmetric shapes (i.e. mug). The detected discrete water levels (empty, low, mid, high) also matches the actual water level in our experiments.
Temperature sensing results are shown in Figure 5. These results are selected from a recorded video clip containing the whole temperature changing process after hot water is poured into a tagged cup. In the beginning, the tag-sensor reports room temperature for the empty cup. After hot water is added, the tag-sensor reports water temperature (and intermediate temperatures). Temperatures are rendered using the color code  shown on the right of Figure 5. Our system shows visually appealing results.

B. Pose Estimation Evaluation
We evaluate the pose estimation pipeline used in the system by considering recognition accuracy, pose estimation quality and running time. The Fast Point Feature Histograms (FPFH) algorithm [28] with and without using local features are implemented as competing methods. The original FPFH algorithm was designed for point cloud alignment. As a baseline method in this experiment, it identifies the in-view object and estimates its pose by aligning each template point cloud to scene point cloud, and the object with the best alignment is selected. "Local Feature + FPFH" works in the same way as our pipeline by first identifying the target object using local features and then estimating its pose using FPFH.
Three different objects (a water bottle, a coffee cup and a mug) are tested. For each object, five images from different angles at a range between 0.3-0.5 meter are collected for evaluation (as show in Figure 6). Within this range, texture details of objects can be captured and their point clouds can be constructed with less noise.
First, the recognition accuracy of each method is evaluated and reported in Table II. As can be noted, compared to the FPFH baseline method, local visual features enhance the recognition accuracy for all cases. This performance boosting results from the rotational invariance of the detected SURF features. Identifying in-view objects is important, thus correct template point clouds can be used for pose estimation in the following step. Second, the pose estimation quality is evaluated using pointto-point residual error, which is defined as: where t i is the i th point in the target object point cloud (green points in Figure 7), and p i is the closest point in the transformed template object point cloud {p} (red points in Figure 7) to t i , such that p i = arg min p t i − p 2 . Results are reported in Table III, where the residual error is averaged across all correctly identified target objects. Point clouds of target objects in the scene are manually labeled (i.e. green points in Figure 7) Due to good pose initialization from local visual feature matching, two-phase pipelines achieves lower point-to-point residual error. "Local Feature + FPFH" performs slightly better than "Local Feature + ICP", since ICP is prone to get trapped into local minima. Examples of successfully aligned point clouds are shown in Figure 7. Third, we compare the running time of different methods, and report the average time for each testing object in Table  IV. Despite "Local Feature + ICP" shows a little higher point- to-point residual error than "Local Feature + FPFH", it runs significantly faster and is suitable for real-time performance.

C. Working Range Testing
Object recognition accuracy of our system is affected by the camera-object separation. The minimum distance recommended by the depth camera manufacturer is 30 cm. As the separation increases, the quality of the depth data deteriorates and beyond 1 m, texture details of target objects are hard to capture. Similarly, RFID tag-reader communication is affected by the tag-reader separation. If the separation is too large, the power reaching the tag is too low to power the IC and backscatter the signal to the reader. We define a score called normalized RSSI for generalized comparison between different material-range-signal strength experiments. Score of 1 denotes a good backscattered signal strength of -20 dBm at the reader and a score of 0 means signal strength is below the sensitivity of the reader (-80 dBm).
Recognition accuracy and normalized RSSI scores are obtained for different objects in this study by varying the cameraobject and reader-object separation distances (see Fig.8). From our observations, to achieve a reliable sensing and good quality visualization, we set an acceptable score of 0.5-1 for both the metrics. We propose a 40-75 cm working range between the camera & target object, and less than 100-150 cm working range between the tagged objects & readers for good quality and reliable visualization. One of our ultimate goals is to package the camera and reader on to the head mount so that a need for separate RFID infrastructure is eliminated. Therefore, this data shows that the RFID range is suitable for this type of application and the human-object distance is limited by the camera.

V. CONCLUSION
We present the working of an enhanced augmented-vision system named X-Vision which superimposes physical objects with 3D holograms encoded with sensing information captured from the tag-sensors attached to everyday objects. Two testing cases, water level and temperature sensing, are demonstrated in this paper. We also observe that the distance between the depth camera and RFID reader with the objects is critical for system performance. We propose a 40-75 cm range between the camera & target object, and less than 100-150 cm between the tagged objects & readers for good quality and reliable visualization.