Skip to content

Question about estimating azimuth angle and elevation angle in 'demo/visualizer' #61

Description

@kathy-lee

Hi, first of all thank you for this open source package, it's very helpful! I just have one question when I try to write a function to generate point cloud from IWR1443BOOST raw ADC data, only 2 of the transmitting antennas on the azimuth (horizontal) axis are used and receiving antennas are 4. I think the demo/visualizer/main.py gives a good enough example to generate point cloud, but I can't understand the following steps inside beamforming_naive_mixed_xyz() which is invoked after aoa_bartlett() and peak_search_full_variance() :

        higher_rung = inputSignal[8:12]
        lower_rung = inputSignal[2:6]
        for j in range(num_out):
            ele_out = aoa_estimation_bf_one_point(4, higher_rung, steering_vec[max_theta[j]])
            azi_out = aoa_estimation_bf_one_point(4, lower_rung, steering_vec[max_theta[j]])
            num = azi_out * np.conj(ele_out)
            wz = np.arctan2(num.imag, num.real) / np.pi

            temp_angle = -est_range + max_theta[j] * est_resolution  # Converts to degrees, centered at boresight (0 degrees)
            # Make sure the temp angle generated is within bounds
            if np.abs(temp_angle) <= est_range and estimated_variance[j] < doa_var_thr:
                e_angle = np.arcsin(wz)
                a_angle = -1 * (np.pi / 180) * temp_angle  # Degrees to radians
                output_e_angles.append((180 / np.pi) * e_angle)  # Convert radians to degrees
                output_a_angles.append((180 / np.pi) * np.arcsin(np.sin(a_angle) * np.cos(e_angle)))  
                output_ranges.append(input_ranges[i])

Can someone tell me the process of these steps and what are higher_rung and lower_rung used for? In my case to get azimuth angle, shall I ignore those steps and directly take the result from peak_search_full_variance() after aoa_bartlett() as azimuth angle estimation? Many thanks in advance!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions