This Napster End User Licence Agreement (Agreement) is a legally binding and valid agreement between you ("you" and "your") and either Napster Luxembourg S.à r.l. (if you live in Europe), Napster do Brasil Licenciamento de Música Ltda. (if you live in Brazil), Napster K.K. (if you live in Japan), or Rhapsody International Inc. (if you live anywhere else), (collectively, and with their affiliates, subsidiaries, and assigns, "Napster," "our," "us," or "we"). Napster provides various products and services, including mobile and web-based applications for electronically distributing, downloading, and streaming music (collectively, the "Services"). This Agreement governs your use of the mobile, web, and/or desktop applications and widgets distributed by Napster, which allow access to the Services (collectively, the "Application") by means of a Device (a "Device" includes but is not limited to desktop and laptop computers, tablets, mobile phones, wearables, smart speakers, smart televisions, home audio devices, or any other device capable of Internet connection).
By installing or using the Application, or through your express agreement when requested, you accept this Agreement and you acknowledge and agree that you have read it, that you understand it, and that you consent to be bound by its terms and conditions. You accept that you have the authority and the capacity to be bound by the terms of this Agreement. In addition to the Services, the Application is integrated with third-party products and services, and these third-party beneficiaries may enforce the provisions in this Agreement.
Please note that special terms may apply to you depending on the territory where you live; these special terms are found at the end of this document.
Use or installation of the Application constitutes acceptance of this Agreement, or you may accept it explicitly. If you do not agree to the terms of this Agreement, or if you fail to abide by its terms, you are not licensed to use the Application, and you must not use the Application or install it on any Devices. As a condition to your use of the Application and the Services, you hereby acknowledge that you comply and will continue to comply with all laws, rules, and regulations applicable to your use in the territory where you use them, and that you reside in a territory where the Services are available.
Napster hereby grants to you a limited, non-exclusive, revocable, non-transferable licence to use the Application solely for your own personal, noncommercial use, on Devices under your ownership and control, not for use in the operation of a business or for the benefit or any other person or entity, and subject to the terms of this Agreement.
The Application is licensed, not sold. You do not own the Application in any form, and Napster retains ownership of the Application even after installation on your Device. The rights that are licensed to you under this Agreement are limited to those expressly granted in this Agreement, and Napster reserves all other rights.
You may install and use one copy of the Application on each Device. The number of Devices on which you may install and use the Application is determined by the tier of the Services to which you have subscribed. You may not exceed the number of Devices authorised by your tier of the Services or circumvent the technical limitations in the Application that limit the number of Devices on which you may install the Application.
impersonate or misrepresent your affiliation with any person or entity in regard to the Application or the Services.
Violation of any of the restrictions or obligations in this Agreement may result in the termination of your licence to use the Application. Napster reserves any and all rights or remedies that may be available in the event of your breach of this Agreement.
Napster may issue updates to the Application from time to time. You agree that the Application may automatically download and install such updates, and you agree that this Agreement, as amended from time to time, will apply to all such updated versions of the Application, unless such updated versions are released with a separate licence agreement. It is your responsibility to ensure you have the latest update of the Application.
The Application will operate only on those hardware and software platforms specified in the Application documentation. It is your responsibility to provide compatible platforms for the Application. Napster may add or remove support for specific platforms at any time with or without notice, and with or without a new update.
Napster may, in its sole discretion, change, suspend, remove, or disable access to the Application or the Services at any time with or without notice. Napster (and not any app store, device manufacturer, or operating system provider) will be solely responsible for support of, claims related to, and updates to the Application.
The Application (including all past and future iterations of it) is protected by intellectual property laws, including, without limitation, copyright, patent, trademark, trade secret, and industrial design law. Napster retains all title and ownership rights in the Application. Except as expressly stated in this Agreement, Napster does not grant any express or implied right or licence to you under any patent, copyright, trademark, trade secret, or industrial design rights of Napster.
The Content served by Napster or third parties through the Application and the Services is the property of Napster, its licensors, or its partners. Title, ownership rights and intellectual property rights in and to such Content belong to Napster or these third parties. This Agreement gives you no ownership interest in the Content (including Content that is downloaded to your Device), and you may not infringe the intellectual property rights of others. You are solely responsible for the investigation, defense, settlement and discharge of any claim against you based on your use of the Application or Content.
The Application may make third-party web sites, web pages, products, services, and advertisements available to you via links ("Linked Services"), and these Linked Services may have their own applicable agreements or terms. Napster is not responsible or liable for the features or content of any Linked Services, and the links to them in the Application do not imply Napster's endorsement of them. Your access to any of the Linked Services is entirely at your own risk, and you are solely responsible for any consequences of accessing any Linked Services, as well as for viewing and abiding by any applicable agreements or terms.
From time to time, Napster may make available to you a version of the Application containing certain new and pre-released features, functionality, applications, or services ("Beta Releases"). Beta Releases may contain different, fewer, or more features than the current commercial release of the Application or any future release. Beta Releases are not intended for wide commercial release and may contain errors affecting their proper operation. You use Beta Releases at your own risk. Napster may change or discontinue Beta Releases at any time or choose to never make them commercially available.
TO THE MAXIMUM EXTENT ALLOWED BY APPLICABLE LAW, THE APPLICATION IS PROVIDED "AS IS" AND "AS AVAILABLE" WITH ALL FAULTS, AND NAPSTER, ITS CORPORATE PARENTS, SUBSIDIARIES, AFFILIATES, AND ITS PARTNERS, AS APPLICABLE (COLLECTIVELY, THE "NAPSTER ENTITIES") EXPRESSLY DISCLAIM ANY WARRANTY OF ANY KIND FOR THE APPLICATION OR THE SERVICES, WHETHER EXPRESS, IMPLIED, OR STATUTORY, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTY OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT, ACCURACY OR NON-INFRINGEMENT OF THIRD-PARTY RIGHTS.
USE OF THE APPLICATION AND THE SERVICES IS AT YOUR OWN RISK. THE NAPSTER ENTITIES MAKE NO WARRANTY THAT THE APPLICATION AND THE SERVICES WILL MEET YOUR REQUIREMENTS, OR THAT THE APPLICATION AND THE SERVICES WILL BE COMPLETE, ACCESSIBLE, UNINTERRUPTED, TIMELY, SECURE, RELIABLE, ACCURATE, VIRUS-FREE, ERROR-FREE, OR THAT DEFECTS OF ANY KIND WILL BE CORRECTED. THE NAPSTER ENTITIES MAKE NO WARRANTY REGARDING ANY GOODS OR SERVICES PURCHASED OR OBTAINED THROUGH THE APPLICATION, OR ANY TRANSACTIONS ENTERED INTO THROUGH THE APPLICATION, AND NO ORAL OR WRITTEN ADVICE, RELEASE OR INFORMATION PROVIDED BY THE NAPSTER ENTITIES TO YOU SHALL CREATE A WARRANTY.
TO THE EXTENT PERMITTED BY APPLICABLE LAW, YOUR SOLE AND EXCLUSIVE REMEDY FOR ANY DISSATISFACTION WITH THE APPLICATION OR THE SERVICES IS TO UNINSTALL THE APPLICATION AND STOP USING IT.
TO THE MAXIMUM EXTENT ALLOWED BY APPLICABLE LAW, THE NAPSTER ENTITIES AND THEIR RESPECTIVE OFFICERS, DIRECTORS, EMPLOYEES, SUCCESSORS, ASSIGNS, AGENTS OR AFFILIATES SHALL NOT BE LIABLE FOR PERSONAL INJURY, OR ANY CONSEQUENTIAL, INCIDENTAL, DIRECT, INDIRECT, SPECIAL, PUNITIVE, OR OTHER DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, LOSS OF USE, PECUNIARY LOSS, LOSS OF INFORMATION OR DATA, BUSINESS OR PERSONAL USE INTERRUPTION, OR ANY OTHER COMMERCIAL OR PERSONAL DAMAGE OR LOSS), ARISING OUT OF OR RELATING TO THIS AGREEMENT OR THE USE OF OR INABILITY TO USE THE APPLICATION AND THE SERVICES, HOWEVER CAUSED, WHTHER BASED ON CONTRACT, TORT, OR ANY OTHER LEGAL THEORY, EVEN IF NAPSTER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN NO EVENT SHALL THE NAPSTER ENTITIES BE LIABLE FOR ANY CLAIMS OR DAMAGES IN EXCESS OF THE AMOUNT YOU PAID TO NAPSTER DURING THE PREVIOUS 12 MONTHS (YOU WILL BE RESPONSIBLE FOR ANY EXPENSES YOU MAY INCUR IN RELATION TO RECEIVING THIS AMOUNT). THE FOREGOING LIMITATIONS SHALL APPLY AT ALL TIMES, REGARDLESS OF WHETHER THE SPECIFIED REMEDY FAILS OR IS DEEMED TO FAIL OF ITS ESSENTIAL PURPOSE.
You will indemnify, hold harmless, and defend Napster and its parents, shareholders, subsidiaries, affiliates, officers, directors, employees, service providers, distributors, licensors, agents, successors, assigns and other representatives, from all third-party claims, judgments, liabilities, expenses, costs or related penalties, including, without limitation, reasonable attorneys' fees, arising out of, resulting from or in any way connected to your breach of this Agreement or your illegal acts or omissions.
Napster, at its sole discretion, at any time, with or without notice, and for any or no reason, may terminate this Agreement or suspend your access to the Application. Upon termination of this Agreement, you will immediately cease use of the Application and will delete all copies of the Application you have made.
Napster, at its sole discretion, may change the terms of this Agreement from time to time, without notice. The most current version of this Agreement will be effective immediately upon release, and will supersede all previous versions. You accept any and all modifications by continuing to use the Application.
You may not assign this Agreement, any portion of it or any of your rights or obligations under the Agreement to any third party, whether by direct transfer, sub-licence or any other means. Any purported assignment of this Agreement or any portion of it, by you, shall be null and void. To the extent permitted by applicable law, Napster may, at its sole discretion and without any recourse to you, freely assign this Agreement, any portion of it or any of its rights or obligations under it.
Unless otherwise specified in Section 15 below (as in the case of Brazilian or European consumers), this Agreement shall be construed in accordance with and governed by the internal laws of the State of Washington, United States of America, without regard to choice or conflicts of laws principles (the "Applicable Law"). This Agreement will not be governed by the United Nations Convention of Contracts for the International Sale of Goods, the application of which is hereby expressly excluded.
The cost of any arbitration shall be borne equally by the parties, except that each party shall be responsible for its own attorneys' fees. If the arbitrator rules in your favor, then Napster will pay you the greater of (i) the amount of the award stated by the arbitrator, (ii) the amount of Napster's most recent written settlement offer, or (iii) US$1,000.
You and Napster agree that each may only bring a Claim against the other in an individual capacity, and not as a plaintiff or class member in any purported class action or other representative proceeding. Further, unless you and Napster agree otherwise, no judge or arbitrator may consolidate more than one person's Claims or otherwise preside over any form of representative or class proceeding.
Before initiating any arbitration or proceeding, you and Napster may agree to first attempt to negotiate any Claim informally for at least 30 days; provided, however, the following Claims are not subject to the above provisions concerning negotiations and binding arbitration: (i) any Claims seeking to enforce or protect, or concerning the validity of, any of your or Napster's intellectual property rights; and (ii) any Claims related to allegations of theft, piracy or unauthorised use of the Application. A party who intends to seek such negotiation must first send to the other, by certified mail or commercial delivery service, a written Notice of Dispute ("Notice"). The address to send a Notice to Napster is Rhapsody International Inc., Legal Department, 701 Fifth Ave. Suite 3100, Seattle, WA 98104 USA. The Notice must (i) describe the nature and basis of the Claim, and (ii) set forth the specific relief sought.
With the exception of the sub-sections 13(a) and (b), if any portion of this Section 13 is found to be illegal or unenforceable or excessively broad as to duration, geographical scope or activity, then that portion shall be construed so that the remaining portions of this section shall not be affected, but shall remain in full force and effect, and any such illegal or overly broad portion shall be deemed, without further action on the part of any party, to be modified, amended and/or limited, but only to the extent necessary to render the same valid and enforceable. If nonetheless, the portion of this section is considered to be illegal or unenforceable, that portion will be severed and the remainder of this section will be given full force and effect. If either or both of sub-sections 13(a) or (b) are found to be illegal or unenforceable, then any such Claim will be exclusively decided by a court of competent jurisdiction within Seattle, State of Washington, USA, and you and Napster agree to submit to the venue, personal and subject-matter jurisdiction of that court.
Brazilian law shall apply to your use of the Services, including specific provisions about privacy. In order to comply with the applicable law, Napster will store data related to your activities when using the Services, such as access logs, for the term established by Law 12.965/2014 or other updated regulation that replaces or modifies it.
Once you stop using the Services, you may request the deletion of all data related to your use of the Services – this, however, shall not prevent Napster from complying with the storage obligations set forth by the aforementioned Law 12.965/2014 or other updated regulation that replaces or modifies it.
The choice of law provision of Section 13(a) shall not deprive you of the protection afforded to you by the law of the country of your habitual residence.
If you are a resident of a member state of the European Union, the provisions of Section 13(b) through (h) do not apply in respect of the applicable jurisdiction. You may bring proceedings against Napster either in the courts of the member state in which Napster is domiciled or, regardless of the domicile of Napster, in the courts for the place where you are domiciled.
The following are some of the laws, rules, regulations and sanctions that apply to this Agreement, the Services and the Application: (a) the U.S. Department of Commerce's Export Administration Regulations ("EAR"), which governs the export and re-export of software; (b) the U.S. Treasury Department's Office of Foreign Assets Control ("OFAC"), which administers and enforces economic and trade sanctions; and (c) the U.S. Department of States' International Traffic in Arms Regulations ("ITAR"), which implements the Arms Control Act regarding the export and temporary import of defense articles and services.
The Application may not be exported or re-exported (a) into countries under U.S. embargo, or (b) to any person on the U.S. Treasury Department's Specially Designated Nationals and Blocked Persons List, or (c) to any person on the U.S. Department of Commerce Denied Persons List or Entity List, or (d) to any person on the U.S Department of State's List of Statutorily Debarred Parties.
You agree that in the use of the Application and the Services, you are in compliance with, and shall at all times comply with the requirements of EAR, OFAC and ITAR, and all other applicable export and re-export related laws, rules, regulations and sanctions. You warrant that (a) you are not located in a country that is subject to a U.S. Government embargo, or that has been designated by the U.S. Government as a "terrorist supporting" country, and (b) you are not listed on any U.S. Government list of prohibited or restricted parties.


For an existing LibGDX project of a card game, we are looking for a skilled developer to take up the iOS porting (Android and html already up). The game is already in production except for the iOS platform (iOS moe) that the candidate should integrate and test thoroughly.
Also the game on Android features a multiplayer aspect too, w/ Google Games Services. This feature is _not_ included in this task but, if the freelancer is up to it and has experience, could be the focus of a subsequent collaboration with him.
Proven LibGDX + Games Services experience to complete this task, preferably with published apps or projects, is required. Priority on freelancers with experience on multiplayer features for iOS.
The selected person will coordinate with my staff and periodically provide updates on the work done. He/she should provide support for one month after launch in case of bugs.
Preferred a single developer/coder and not a manager in a company because we need good constant communication.
Honesty and punctuality will be appreciated and reciprocated.
Once selected, a detailed requirement and info document will be provided to carry on the work, as well as extensive support by my staff for any problems or questions should arise.


text:
EURASIP Journal on Advances in Signal Processing
DOA estimation of spectrally overlapped LFM signals based on STFT and Hough transform
Xiaofa Zhang1,
Weike Zhang ORCID: orcid.org/0000-0001-6173-14031,
Ye Yuan1,
Kaibo Cui1,
Tao Xie1 &
Naichang Yuan1
EURASIP Journal on Advances in Signal Processing volume 2019, Article number: 58 (2019) Cite this article
Traditional subspace methods which are based on the spatial time-frequency distribution (STFD) matrix have been investigated for direction-of-arrival (DOA) estimation of linear frequency modulation (LFM) signals. However, the DOA estimation performance may degrade substantially when multiple LFM signals are spectrally overlapped in time-frequency (TF) domain. In order to solve this problem, this paper proposes single-source TF points selection algorithm based on Hough transform and short-time Fourier transform (STFT). Firstly, the signal intersections in TF domain can be solved based on the Hough transform, and multiple-source TF points around the intersections are removed, so that the single-source TF points set is reserved. Then, based on the Euclidean distance operator, the single-source TF points set belonging to each signal can be obtained according to the property that TF points of the same signal have same eigenvector. Finally, the averaged STFD matrix is constructed for each signal, and DOA estimation is achieved based on multiple signal classification (MUSIC) algorithm. In this way, the proposed algorithm exhibit remarkable superiority in estimation accuracy and angular resolution over the state-of-the-art schemes and can achieve DOA estimation in the underdetermined cases. In addition, the proposed algorithm can still perform DOA estimation when multiple LFM signals intersect at one point. Numerical simulations demonstrate the validity of the proposed method.
Direction-of-arrival (DOA) estimation is widely applied in array signal processing field, such as radar, wireless communications, sonar, and seismic sensing [1,2,3,4]. For the single-frequency signal, traditional subspace-based algorithms and their improved methods have been verified as efficient estimation techniques [5, 6]. With the rapid development of signal processing technologies, the linear frequency modulation (LFM) signal has many good characteristics, such as carrying a large amount of information and possessing better detection performance, which makes it being widely used in electronic countermeasures. Nevertheless, subspace-based algorithms have limitations to deal with LFM signals which are wideband and nonstationary; thus it is very important to study the DOA estimation of LFM signals. The time-frequency (TF) analysis tools can deal with LFM signals, because they can make full use of the TF energy aggregation property of LFM signals. Belouchrani and Amin proposed the concept of STFD [7], and then a series of DOA estimation algorithms based on the STFD matrix have been proposed [8,9,10,11,12,13,14]. These algorithms mainly use the STFD matrix to replace the covariance matrix in the multiple signal classification (MUSIC) algorithm, which forms the TF-MUSIC algorithm. Compared with subspace-based algorithms, the TF-MUSIC algorithm can provide better DOA estimation performance because the noise power is spread while localizing the source energy in TF domain. In order to construct the STFD matrix, it is necessary to select the single-source TF points belonging to each signal in TF domain.
When LFM signals are TF-disjoint in TF domain, there exists efficient single-source TF points selection algorithms [15, 16]. The reference [15] obtained the single-source TF points based on the improved clustering algorithm. In [16], Heidenreich firstly applied the morphological image processing method to detect instantaneous frequency (IF) segments. Then, multiple detected IF segments of each signal are combined together for DOA estimation based on a bootstrap resampling technique. Unfortunately, these two methods only can be used in the situation that the signals are TF-disjoint. When the signals are non-disjoint (i.e., spectrally overlapped) in TF domain, the studies of single-source TF points selection algorithms are not very full. In [17,18,19], the single-source TF points selection algorithms are proposed based on the Wigner-Ville distribution (WVD). However, considering that the WVD has higher computational complexity and generates cross-term TF points in TF domain, it is very difficult to apply the WVD in practice. The reference [20] proposes the short-time Fourier transform (STFT) distribution model for DOA estimation of LFM signals, which greatly reduces implementation cost. Based on the STFT distribution, many DOA estimation algorithms have also been proposed [21,22,23,24,25] when LFM signals are non-disjoint in TF domain. However, all of them have some limitations. The single-source TF points selection algorithms in [21] are only suitable for real-valued array manifold matrix, but the array manifold vector in the DOA estimation is complex-valued. In [22, 23], the signals are required to satisfy the W-disjoint distribution in TF domain. Zhang proposes single-source TF points selection algorithm based on the TF points intensity information [24]. Although it can successfully realize the DOA estimation when two LFM signals are non-disjoint, the algorithm will fail when multiple LFM signals intersect at one point. In [25], the author uses the forward-backward spatial smoothing (FBSS) algorithm to eliminate the effect of multiple-source TF points and then perform DOA estimation. Although this method can achieve DOA estimation, the DOA estimation accuracy is poor.
In order to ease the limitations of existing algorithms for spectrally overlapped LFM signals, this paper propose the single-source TF points selection algorithm based on Hough transform and STFT when multiple LFM signals are non-disjoint in TF domain. Theoretically, the TF distribution of LFM signal is the straight line in TF domain. However, since the sampling data is discrete and finite, the TF distribution of each LFM signal under STFT has somewhat wide, which is called the TF ridgeline. Therefore, based on the Hough transform in TF domain, two line segments can be detected for every LFM signal. By traversing the TF domain, all line segments of LFM signals can be detected, and the line segments intersections can be calculated according to the endpoint coordinates. The area which is surrounded by these intersections is the multiple-source TF points set. Therefore, by removing multiple-source TF points around the intersections, the single-source TF points set is reserved. Then, based on the Euclidean distance operator, single-source TF points set belonging to each signal can be obtained according to the property that TF points of the same signal have same eigenvector. Finally, the averaged STFD matrix for every signal is computed, and DOA estimation can be achieved based on the MUSIC algorithm. In this way, the proposed algorithm has lower computational complexity and can achieve DOA estimation in the underdetermined cases. In addition, when there exists multiple signals at the intersections (i.e., greater than two), the accurate DOA estimation can still be achieved. Due to automatically select single-source TF points set of each signal, the proposed algorithm exhibits remarkable superiority in estimation accuracy and angular resolution over the state-of-the-art schemes.
The remainder of this paper is organized as follows. Section 2 formulates the STFT model of LFM signal based on the ULA and illustrates how to select single-source TF points in detail. Section 3 carries the numerical simulations, and the proposed algorithm is discussed referring to the simulation results. Section 4 concludes the paper.
STFT model of LFM signal
In this paper, a uniform linear array (ULA) with M sensors is considered, and the inter-element spacing is d. Furthermore, N LFM signals are assumed to impinge on the ULA from θ1, θ2, ⋯, θN. The array output at time t can be modeled as
$$ \mathbf{X}(t)=\mathbf{A}(t)\mathbf{S}(t)+\mathbf{N}(t), $$
where X(t) = [x1(t), x2(t), ⋯, xM(t)]T is the array observation vector, S(t) = [s1(t), s2(t), ⋯, sN(t)]T is the LFM signal vector, and N(t) = [n1(t), n2(t), ⋯, nM(t)]T is the additive white Gaussian noise vector. A(t) = [a1(t), a2(t), ⋯, aN(t)] is the M × N array manifold matrix, and an(t) = [exp(−jfn(t)τn1), ⋯, exp(−jfn(t)τnM)]T is the steering vector of the nth signal at time t, where j is the imaginary unit. τnm = − 2π(m − 1)d cos(θn)/c represents the time delay of the nth signal on the mth element respecting to the reference element, where c is the speed of light. The instantaneous frequency fn(t) is denoted as
$$ {f}_n(t)={f}_{n0}+{\gamma}_nt, $$
where fn0 and γn are initial frequency and modulated frequency of the nth signal, respectively. When γn = 0, the LFM signal becomes narrowband single-frequency signal.
In 1946, Gabor proposed the concept of the STFT, which is an effective TF analysis tool for dealing with the LFM signal. The STFT distribution of X(t) in the free of noise can be expressed as
$$ {\mathbf{S}}_X\left(t,f\right)=\mathbf{A}(t){\mathbf{S}}_S\left(t,f\right)=\mathbf{A}(t)\left[\begin{array}{c}{S}_{S_1}\left(t,f\right)\\ {}\vdots \\ {}{S}_{S_N}\left(t,f\right)\end{array}\right], $$
where \( {S}_{S_n}\left(t,f\right) \) is the STFT value of the nth LFM signal.
Then, the STFD matrix can be calculated through the correlation operation of SX, namely,
$$ {\mathbf{D}}_{XX}\left(t,f\right)={\mathbf{S}}_X{\mathbf{S}}_X^H=\mathbf{A}(t){\mathbf{D}}_{SS}\left(t,f\right){\mathbf{A}}^H(t), $$
where DXX and DSS are array output STFD matrix and signal STFD matrix, respectively.
The STFT distribution of LFM signals in TF domain can be described as Fig. 1. Figure 1a denotes that the LFM signals are TF-disjoint in TF domain, which means that signals are independent of each other, and the reference [15] has proposed efficient single-source TF points selection method.
TF distribution condition of LFM signals, (a) TF-disjoint LFM signals, (b) TF non-disjoint LFM signals
This paper mainly studies that LFM signals are tiny spectrally overlapped in TF domain. That is to say, multiple signals only have a small number of same TF points in TF domain, as is shown in Fig. 1b. In the TF domain, there exist noise-term TF points and auto-term TF points, and auto-term contains single-source TF points and multiple-source TF points. Based on the proposed algorithm, we can remove noise-term TF points and multiple-source TF points in turn and obtain the single-source TF points set of each signal. Finally, the STFD matrix can be constructed, and subsequent DOA estimation can also be achieved.
In TF domain, the LFM signals have obvious energy aggregation effect. According to [15], DXX is very large at the TF ridgeline, and DXX is close to zero at other TF points. Let ΩX be the TF support domain, we can obtain
$$ {\displaystyle \begin{array}{l}{\mathbf{D}}_{XX}\left(t,f\right)\gg 0\kern1.2em \left(t,f\right)\in {\varOmega}_X\\ {}{\mathbf{D}}_{XX}\left(t,f\right)\approx 0\kern1.2em \left(t,f\right)\notin {\varOmega}_X.\end{array}} $$
In order to filter out the noise and obtain the TF points which have enough energy in TF domain, we can set an empirical threshold value and perform following criterion at each sampling time instant (t, f) of DXX
$$ \frac{{\left\Vert {\mathbf{D}}_{XX}\left(t,f\right)\right\Vert}_F}{\underset{f}{\mathit{\max}}{\left\Vert {\mathbf{D}}_{XX}\left(t,f\right)\right\Vert}_F}>{\varepsilon}_1\kern0.8000001em \left(t,f\right)\in {\varOmega}_X, $$
where ‖·‖F is the Frobenius norm and ε1 is a small empirical threshold value and is related to noise. Typically, ε1 = 0.05 when SNR = 10 dB [18].
Then, the new TF points set ΩA which includes single-source TF points ΩS and multiple-source TF points ΩM can be obtained.
Extracting single-source TF points
At the signal intersections, LFM signals are coherent owing to same frequency, which brings the rank deficiency of the signal subspace matrix. If these intersected TF points are selected to construct the STFD matrix, then subsequent DOA estimation will fail. Therefore, our goal is to remove multiple-source TF points and obtain single-source TF points set belonging to each signal.
In theory, two LFM signals only have an intersection in TF domain. However, since the sampling data is discrete and finite, the TF ridgeline of LFM signals under STFT has somewhat wide. Therefore, there exist multiple TF points around the intersections when LFM signals are non-disjoint in TF domain. By converting the TF distribution of LFM signals into ordinary grayscale image, we can use the Hough transform method to detect straight lines in the grayscale image [26]. Hough transform is a parameter estimation technique using the voting principle in TF domain. The basic principle is to map the straight line detecting problem in the plane coordinate domain into the parameter coordinate domain by using the point-line duality property, so that the mapped result is easier to be detected. It is assumed that the curve satisfies the following equation
$$ F\left(\left(t,f\right),\left({a}_1,{a}_2,\cdots, {a}_m\right)\right)=0. $$
In the plane Cartesian coordinates, the curve satisfies specific parameters (a1, a2, ⋯, am), and (t, f) is located at the curve. ρ denotes the distance between the curve and the coordinate origin, and θ is the angle between ρ and the sampling time axis. After mapping into the parameter domain, we use the polar coordinates to describe the parameters, and there exists following relationship
$$ \rho =t\ast \cos \left(\theta \right)+f\ast \sin \left(\theta \right). $$
Equation (8) shows that a point in the plane coordinates corresponds to a curve in the parameter coordinates. The different points of the same curve in the plane coordinates intersect at a point in the parameter coordinates, as is shown in Fig. 2.
The Hough transform schematic
Figure 2 shows that the three points A, B, C of the same line in the plane coordinate domain can be mapped into three curves and curves intersect at the point D. By integrating along with different θ, we can obtain the Hough transform. As a consequence, the Hough transform is a kind of projection integral essentially.
Firstly, we convert the TF distribution into the grayscale image. Then, by performing Hough transform on the grayscale image, we can obtain the corresponding curves of each TF points in the parameter domain. These curves exist multiple intersections, and each intersection corresponds to a detected line segment in the plane coordinate domain. For N LFM signals in TF domain, 2N peak points (θ1, ρ1), (θ2, ρ2), ⋯, (θ2N, ρ2N) can be searched by setting appropriate threshold value and carrying accumulation statistics; this is because the TF distribution of LFM signal under STFT has somewhat wide. The 2N peak points correspond to 2N line segments of the plane coordinate domain, and the mathematical equation of these lines can be calculated based on the endpoint coordinates, namely,
$$ \Big\{{\displaystyle \begin{array}{l}{f}_1={k}_1t+{b}_1\\ {}{f}_2={k}_2t+{b}_2\\ {}\vdots \\ {}{f}_{2N}={k}_{2N}t+{b}_{2N}\end{array}}, $$
where k1, k2, ⋯, k2N and b1, b2, ⋯, b2N are slopes and intercepts of lines, respectively.
Since the noise in TF domain has been removed, the energy value in the TF ridgeline is much stronger than other TF points. Therefore, based on the Hough transform, we can precisely extract the line segments where TF distribution boundary of LFM signals is located in TF domain. Assuming that there exist Q (Q ≤ N(N − 1)/2) intersections between N signals, then the detected 2N line segments which corresponds to N signals will have P (P ≥ 4Q) intersections. If N LFM signals only pairwise intersect, the detected line segments have 4Q intersections. However, when there exists the situation that multiple signals intersect at one point, the number of intersections among 2N line segments will be more than 4Q. For any intersection in TF domain, we can calculate all intersections (t1, f1), (t2, f2), ⋯, (tP, fP) according to the line equation in the grayscale image. Then the minimum min(t1, t2, ⋯tP) and maximum max(t1, t2, ⋯tP) of the sampling time axis can be obtained in all intersections. In addition, the corresponding min(f1, f2, ⋯fU) and max(f1, f2, ⋯fU) can also be solved based on the (9), where f1, f2, ⋯fU are all frequency values that min(t1, t2, ⋯tP) and max(t1, t2, ⋯tP) correspond to detected line segments. If multiple-source TF points cannot be completely removed, these TF points are selected to estimate DOAs, which will result in the failure of DOA estimation. So we remove multiple-source TF points corresponding to the region of (min(t1⋯tP), max(t1⋯tP)) and (min(f1⋯fU), max(f1⋯fU)) and then obtain single-source TF points set ΩS = ∪ Ωn for n = 1, 2, ⋯, N, where Ωn denotes single-source TF points set of the nth signal.
Constructing STFD matrix
In this subsection, we firstly calculate the single-source TF points set belonging to each signal and then construct the STFD matrix for subsequent DOA estimation. According to reference [15], for the signal STFD matrix DSS(t, f), the diagonal elements have a larger value, and the remaining elements are close to zero at the single-source TF points. As a result, based on the (4), the single-source TF points of the nth signal in Ωn satisfies
$$ {\mathbf{D}}_{XX}\left(t,f\right)={\mathbf{D}}_{SS}\left(t,f\right){\mathbf{a}}_n(t){\mathbf{a}}_n^H(t)\kern1.1em \forall \left(t,f\right)\in {\varOmega}_n. $$
For any two single-source TF points (ti, fi) and (tj, fj) in Ωn, (10) can be rewritten as
$$ {\mathbf{D}}_{XX}\left({t}_i,{f}_i\right)={\mathbf{D}}_{SS}\left({t}_i,{f}_i\right){\mathbf{a}}_n(t){\mathbf{a}}_n^H(t). $$
$$ {\mathbf{D}}_{XX}\left({t}_j,{f}_j\right)={\mathbf{D}}_{SS}\left({t}_j,{f}_j\right){\mathbf{a}}_n(t){\mathbf{a}}_n^H(t). $$
It can be seen from (10–12) that the STFD matrix DXX of different TF points in Ωn has same eigenvector an(t).
For any TF point (tp, fp) in ΩS, we can compute the main eigenvalue λ(tp, fp) and the corresponding principal eigenvector e(tp, fp) from the STFD matrix. Without loss of generality, we can make the first element of e(tp, fp) real and positive, namely,
$$ \tilde{\mathbf{e}}\left({t}_p,{f}_p\right)=\left[\begin{array}{c}\frac{{\mathbf{e}}_1\left({t}_p,{f}_p\right)}{\left\Vert \mathbf{e}\left({t}_p,{f}_p\right)\right\Vert}\\ {}\vdots \\ {}\frac{{\mathbf{e}}_M\left({t}_p,{f}_p\right)}{\left\Vert \mathbf{e}\left({t}_p,{f}_p\right)\right\Vert}\end{array}\right].\frac{\left\Vert {\mathbf{e}}_1\left({t}_p,{f}_p\right)\right\Vert }{{\mathbf{e}}_1\left({t}_p,{f}_p\right)}, $$
where em(tp, fp) denotes the mth element of eigenvector e(tp, fp).
For single-source TF points set ΩS, mathematically, (ti, fi) and (tj, fj) belong to the same signal if they have following relationship
$$ d\left(\tilde{\mathbf{e}}\left({t}_i,{f}_i\right),\tilde{\mathbf{e}}\left({t}_j,{f}_j\right)\right)<{\varepsilon}_2, $$
where d(·) is the Euclidean distance operator between \( \tilde{\mathbf{e}}\left({t}_i,{f}_i\right) \) and \( \tilde{\mathbf{e}}\left({t}_j,{f}_j\right) \). ε2 is an empirical threshold value, which is greater than 0. Typically, ε2 = 0.05 when SNR = 10 dB [15]. By traversing entire set ΩS, we can obtain single-source TF points set Ωn of the nth signal.
In order to reduce the calculation error and make full use of single-source TF points, we can compute the averaged STFD matrix of all TF points. For the nth signal, the averaged STFD matrix is expressed as
$$ {\overline{\mathbf{D}}}_n\left(t,f\right)=\frac{1}{\varSigma {\varOmega}_n}\sum \limits_{\left(t,f\right)\in {\varOmega}_n}{\mathbf{D}}_{XX}\left(t,f\right), $$
where \( {\overline{\mathbf{D}}}_n\left(t,f\right) \) is similar to the covariance matrix in the subspace-based algorithm and ΣΩn denotes the number of single-source TF points.
Therefore, based on the MUSIC algorithm, we can carry eigendecomposition on the matrix \( {\overline{\mathbf{D}}}_n\left(t,f\right) \) and obtain the signal subspace and noise subspace. Finally, we can construct the spectrum peak searching function and perform DOA estimation
$$ \mathbf{P}\left(\theta \right)=\frac{1}{{\mathbf{b}}^H\left(\theta \right){\mathbf{U}}_n{{\mathbf{U}}_n}^H\mathbf{b}\left(\theta \right)}, $$
where b(θ) is the steering vector and Un is the noise subspace.
For the readers' convenience, the procedure of single-source TF points selection algorithm based on Hough transform and STFT is summarized as follows:
Filter out noise according to empirical threshold value ε1 in TF domain.
Based on Hough transform, remove multiple-source TF points, and obtain all single-source TF points set ΩS.
Classify signals according to the Euclidean distance operator, and get single-source TF points set Ωn of each signal.
For every signal, calculate the averaged STFD matrix \( {\overline{\mathbf{D}}}_n\left(t,f\right) \) in the set Ωn, and then construct the spectrum peak search function P(θ) = 1/bH(θ)UnUnHb(θ) based on the MUSIC algorithm.
In order to verify the performance of the proposed algorithm, the following simulations are carried. Here, we set some general simulation parameters. The ULA has M = 8 sensors, and the array element spacing is the half of the wavelength which corresponds to the lowest frequency of LFM signals. The sampling rate is 360 MHz and snapshots are 1024. Since the STFT distribution can obviously gather the signal energy in TF domain and the SNR of signals is improved in TF domain by filtering the noise, we select SNR = 10 dB in the following analyses. Meanwhile, this paper involves the selection of two empirical threshold values. The threshold value ε1 eliminates the effect of noise in TF domain, which is related to the SNR. We take ε1 = 0.05 when SNR = 10 dB, and ε1 has been verified by [18]. Similarly, ε2 = 0.05 when SNR = 10 dB, which is also verified by [15]. In addition, we proceed with the comparison simulations among STFT-MUSIC algorithm [20], STFT-FBSS-MUSIC algorithm [25], the reference [24], and the proposed algorithm. Firstly, the general performance of the proposed algorithm is verified, which includes the DOA estimation precision, the spatial resolution, and underdetermined DOA estimation, as is shown in Sections 3.1 and 3.2. Then, we verify the new property of the proposed algorithm, i.e., the DOA estimation performance when multiple LFM signals intersect at one point, as is shown in Section 3.3. In Section 3.4, the computational complexity of different algorithms is analyzed.
DOA estimation accuracy analysis
We consider that three spectrally overlapped LFM signals in TF domain come from− 30 °, 0, ° and 30 °. The frequency distribution of three signals are [10, 80] MHz, [170, 10] MHz, and [60, 170] MHz, respectively, and all signals have same power. Figure 3 illustrates the calculation process of the single-source TF points selection method. Figure 3a displays the TF distribution of three LFM signals after filtering noise, whose grayscale image is showed in Fig. 3b. Based on Hough transform, we can search six peak points which is indicated by white in Fig. 3c, and Fig. 3d shows the detected six line segments. After removing multiple-source TF points, the single-source TF points set is shown in Fig. 3e. According to the Euclidean distance operator, we can classify signals and get single-source TF points set of each signal, as is shown in Fig. 3f.
The single-source TF points selection method, (a) the TF distribution, (b) the grayscale image, (c) peak points in the parameter domain, (d) the detected line segments, (e) single-source TF points, (f) single-source TF points of each signal
Based on the abovementioned analysis, Fig. 4a plots ten typical independent estimated spatial spectra of the proposed algorithm, where the dashed lines represent the true DOAs. It can be seen that the proposed algorithm can accurately achieve DOA estimation. In order to quantitatively analyze the DOA estimation accuracy of different algorithms, the root-mean-square error (RMSE) is introduced, which is denoted as
$$ {\mathrm{RMSE}}_{\theta }=\sqrt{\sum \limits_{p=1}^P\sum \limits_{n=1}^N{\left({\hat{\theta}}_{mn}-{\theta}_n\right)}^2/ MN}, $$
The DOA estimation performance of three LFM signals, (a) the spatial spectrum distribution, (b) the RMSE of DOA estimation versus SNR
where M is the number of Monte Carlo trials, N is the number of signals, and \( {\hat{\theta}}_{mn} \) is the estimated value of θn in the mth simulation.
By carrying 1000 times independent Monte Carlo trials, Fig. 4b shows that the DOA estimation RMSE of 4 algorithms vary with the SNR. From Fig. 4b, we can see that DOA estimation RMSE of four algorithms decreases rapidly with the increase of SNR. In general, the STFT-FBSS-MUSIC algorithm has the worst DOA estimation accuracy, and the estimation precision is 0.7594 ° when SNR is 10 dB. Because of performing the spatial smoothing operation, the array aperture of the STFT-FBSS-MUSIC algorithm is reduced. As a result, the estimation precision is reduced. Then, it is followed by the STFT-MUSIC algorithm, and the estimation precision is 0.3970 ° when SNR is 10 dB. The STFT-MUSIC algorithm performs DOA estimation by using the TF points at the TF ridgeline, and only few TF points are used to estimate DOAs, which results in low estimation precision. In addition, it is not realistic to assume that the TF points are available at the TF ridgeline. By removing multiple-source TF points, the reference [24] and the proposed algorithm can obtain single-source TF points set belonging to each signal. Then, by computing the averaged STFD matrix of all TF points for every signal, the DOA estimation precision of these two methods is improved. Compared with the [24], the proposed algorithm removes multiple-source TF points based on Hough transform and reserves as many single-source TF points as possible. Therefore, the proposed algorithm possesses the best estimation precision, which can achieve 0.1474 ° when SNR is 10 dB.
The angular resolution analysis and underdetermined DOA estimation
In order to verify the angular resolution of the proposed algorithm, we consider two spectrally overlapped LFM signals coming from−0.5 ° and 0.5 °. The frequency distribution of two signals are [170, 10] MHz and [10, 170] MHz, respectively. Figure 5a plots ten typical independent estimated spatial spectra of the proposed algorithm, which shows that the proposed algorithm can achieve DOA estimation when the spatial spacing of signals is 1 °. By performing 1000 times Monte Carlo trials, Fig. 5b displays that the DOA estimation RMSE of LFM signals at different SNR, which can be seen that the proposed algorithm has better DOA estimation accuracy when the DOA spacing is 1 °. Although the spatial spacing is very close, they are still distinctly distributed in TF domain. Therefore, the proposed algorithm has better angular resolution.
The angular resolution of the proposed algorithm (DOA spacing: 1 °), (a) the spatial spectrum distribution, (b) the RMSE of DOA estimation versus SNR
It is known that conventional subspace-based algorithms will fail in the underdetermined cases. However, the TF analysis can solve this problem. Based on the abovementioned simulation condition, we assume that four spectrally overlapped LFM signals come from− 15 °,− 5 °, 5 °, and 15 °. Figure 6a plots ten typical independent estimated spatial spectra of this case. Then, we reduce the number of sensors to M = 3, and the incident signals remain unchanged; ten independent estimated spatial spectra is plotted in Fig. 6b. It is seen that the proposed algorithm can correctly estimate DOAs in the underdetermined cases. The reason is that the proposed algorithm separately handles each signal in TF domain. Although the number of signals is more than that of sensors, the proposed algorithm can still achieve DOA estimation.
The DOA estimation in the underdetermined cases, (a) M = 8, N = 4, (b) M = 3, and N = 4
According to Sections 3.1 and 3.2, we know that the STFT-MUSIC algorithm is not practical in the engineering applications and the DOA estimation precision of the STFT-FBSS-MUSIC algorithm is poor. Although the reference [24] has good DOA estimation accuracy, it is only applicable to the case that two LFM signals intersect at one point. When multiple signals intersect at one point, the algorithm will fail. However, the proposed algorithm is not restricted by this case. Based on the Hough transform, the proposed algorithm can achieve DOA estimation when multiple signals intersect at one point. The following experiment will illustrate this property.
The DOA estimation analysis when multiple LFM signals intersect at one point
We consider that three spectrally overlapped LFM signals come from− 30 °, 0 °, and 30 °, and these signals intersect at one point in TF domain. The frequency distribution of three signals are [170,10] MHz, [90,90] MHz , and [10,170] MHz, respectively. Other settings remain unchanged; the TF distribution of three signals is shown in Fig. 7a when SNR = 10 dB, and Fig. 7b shows the detected results by using the Hough transform. Based on the proposed algorithm, the DOA estimation results are shown in Fig. 7c and d. It can be seen that the proposed algorithm has higher DOA estimation precision and the estimation precision can reach 0.1153 ° when SNR = 10 dB. Therefore, the proposed algorithm can achieve DOA estimation when multiple LFM signals intersect at one point.
The DOA estimation results analysis, (a) the TF distribution of three signals, (b) the detected result based on Hough transform, (c) the spatial spectra distribution, (d) the RMSE of DOA estimation versus SNR
The computational complexity analysis
The computational complexity comparison among the proposed algorithm and three existing methods are presented in Table. 1. We consider a ULA with M sensors and N far-field LFM signals imping on the ULA. Ls snapshots are used. In the STFT-FBSS-MUSIC algorithm, assuming that sub-array elements are K(K < M). Considering that the TF-MUSIC algorithm is based on the quadratic TF operation, it has the highest computational complexity O(NM2Ls2log2Ls). Due to performing the FBSS algorithm, the STFT-FBSS-MUSIC algorithm possesses the lowest computational complexity O(NKLs2log2Ls). However, its estimation precision is poor. The reference [24] and the proposed algorithm have similar computational complexities, where Δ1 and Δ2 denote the increased calculation burden due to extract single-source TF points, respectively. Δ1 and Δ2 are similar and are much smaller than O(NMLs2log2Ls). Therefore, the proposed algorithm has better estimation performance and acceptable computational complexity, which will have broad application prospects in the engineering.
Table 1 Comparison of computation complexity
Conventional DOA estimation algorithms will fail when LFM signals are spectrally overlapped in TF domain. In order to solve this problem, this paper proposes single-source TF points selection algorithm based on Hough transform. For the purpose of reducing computational complexity, we select the STFT to analyze LFM signals. The proposed algorithm not only has higher DOA estimation precision and angular resolution but also can achieve DOA estimation in the underdetermined cases. In addition, the proposed algorithm can achieve DOA estimation when multiple signals intersect at one point compared with existing algorithms. Although the current algorithm is only applicable to LFM signals which satisfy the straight line distribution in TF domain, generalized Hough transform can detect other forms of signals with different shapes in TF domain, such as sinusoidal FM signal and frequency-shift-keying signal. Therefore, the proposed algorithm has a broad application prospect in the electronic countermeasures.
Data and materials are not possible to share publicly. If you have any interest in our data and materials, please contact the corresponding author by e-mail.
DOA:
Direction-of-arrival
Linear frequency modulation
Short-time Fourier transform
STFD
Spatial time-frequency distribution
Time-frequency
Multiple signal classification
FBSS
Forward-backward spatial smoothing
Uniform linear array
R. Schmidt, Multiple emitter location and signal parameter estimation. IEEE Trans. Antennas Propag. 34(3), 276–280 (1986)
R. Roy, T. Kailath, Direction-of-arrival estimation by subspace rotation methods-ESPRIT. IEEE Trans. Acoust. Speech. Signal Process. 37(7), 984–995 (1989)
SH Liu, YD Zhang, T Shan, Detection of weak astronomical signals with frequency-hopping interference suppression. Digit Signal Process. 72, 1–8 (2018)
WK Zhang, X Chen, K Cui, T Xie, NC Yuan, DOA estimation for coprime linear array based on MI-ESPRIT and lookup table. Sennsors. 18(9), 3043 (2018)
SH Liu, T Shan, YD Zhang, R Tao, Y Feng, A fast algorithm for multi-component LFM signal analysis exploiting segmented DPT and SDFrFT. In: Proceedings of the 2015 IEEE Radar Conference (RadarCon). 1139–1143 (2015)
T. Shu, X. Liu, Robust and computationally efficient signal-dependent method for joint DOA and frequency estimation. EURASIP J. Adv. Signal Process. 2008(1), 1–16 (2008)
A. Belouchrani, M.G. Amin, Time-frequency MUSIC. IEEE Signal Process Lett. 6(5), 109–110 (2002)
A. Belouchrani, M.G. Amin, Blind source separation based on time–frequency signal representations. IEEE Trans. Signal Process. 46(11), 2888–2897 (1998)
M.G. Amin, Y.D. Zhang, Direction finding based on spatial time-frequency distribution matrices. Digit Signal Process. 10(4), 325–339 (2000)
Y.D. Zhang, W.-K. Ma, M.G. Amin, Subspace analysis of spatial time–frequency distribution matrices. IEEE Trans. Signal Process. 49(4), 747–759 (2001)
A.B. Gershman, M. Pesavento, M.G. Amin, Estimating parameters of multiple wideband polynomial-phase sources in sensor arrays. IEEE Trans. Signal Process. 49(12), 2924–2934 (2001)
KB Cui, WW Wu, JJ Huang, X Chen, NC Yuan, DOA estimation of LFM signals based on STFT and multiple invariance ESPRIT. AEU-Int J Electron Commun. 77, 10–17 (2017)
J. Yu, L. Zhang, K. Liu, Coherently distributed wideband LFM source localization. IEEE Signal Process Lett. 22(4), 504–508 (2015)
A. Belouchrani, M.G. Amin, N. Thirion-Moreau, Y.D. Zhang, Source separation and localization using time-frequency distributions: an overview. IEEE Signal Process. Mag. 30(6), 97–107 (2013)
N. Linh-Trung, A. Belouchrani, K. Abed-Meraim, B. Boashash, Separating more sources than sensors using time-frequency distributions. EURASIP J. Appl. Signal Process. 2005(17), 2828–2847 (2005)
P. Heidenreich, L.A. Cirillo, A.M. Zoubir, Morphological image processing for FM source detection and localization. Signal Process. 89(6), 1070–1080 (2009)
E.M. Fadaili, N.T. Moreau, E. Moreau, Nonorthogonal joint diagonalization/zero diagonalization for source separation based on time-frequency distributions. IEEE Trans. Signal Process. 55(5), 1673–1687 (2007)
A. Aissa-El-Bey, N. Linh-Trung, K. Abed-Meraim, A. Belouchrani, Y. Grenier, Underdetermined blind separation of nondisjoint sources in the time-frequency domain. IEEE Trans. Signal Process. 55(3), 897–907 (2007)
Y.D. Zhang, M.G. Amin, Blind separation of nonstationary sources based on spatial time-frequency distributions. EURASIP J. Adv. Signal Process. 2006(1), 1–13 (2006)
S.G. Kim, D.Y. Chang, Underdetermined blind source separation based on subspace representation. IEEE Trans. Signal Process. 57(7), 2604–2614 (2009)
Y. Li, S. Amari, A. Cichocki, D.W.C. Ho, S. Xie, Underdetermined blind source separation based on sparse representation. IEEE Trans. Signal Process. 54(2), 423–437 (2006)
A Jourjine, S Rickard, O Yilmaz, Blind separation of disjoint orthogonal signals: demixing sources from 2 mixtures. In: Proceedings of IEEE Interna-tional Conference on Acoustics, Speech, and Signal Processing. 5, 2985–2988 (2002)
O. Yilmaz, S. Rickard, Blind separation of speech mixtures via time-frequency masking. IEEE Trans. Signal Process. 52(7), 1830–1847 (2004)
H.J. Zhang, G. Bi, Y. Cai, S.G. Razul, M.S.S. Chong, DOA estimation of closely-spaced and spectrally-overlapped sources using a STFT-based MUSIC algorithm. Digital Signal Process. 52, 25–34 (2016)
K.B. Cui, X. Chen, J.J. Huang, N.C. Yuan, DOA estimation of multiple LFM sources using a STFT-based and FBSS-based MUSIC algorithm. Radioengineering. 26(4), 1126–1137 (2017)
R. Duda, E. Peter, Use of the Hough transformation to detect lines and curves in pictures. Graphics and W. Newman Image Processing. 15(1), 11–15 (1972)
The authors would like to thank all anonymous reviewers and editors for their helpful suggestions for the improvement of this paper.
This research received no specific grant from any funding agency in the public, commercial, or not-for-profit sectors.
State Key Laboratory of Complex Electromagnetic Environment Effects on Electronics and Information System, National University of Defense Technology, Changsha, 410073, China
Xiaofa Zhang
, Weike Zhang
, Ye Yuan
, Kaibo Cui
, Tao Xie
& Naichang Yuan
Search for Xiaofa Zhang in:
Search for Weike Zhang in:
Search for Ye Yuan in:
Search for Kaibo Cui in:
Search for Tao Xie in:
Search for Naichang Yuan in:
WZ and KC proposed the original idea of the full text; WZ and YY designed and implemented the simulation experiments; WZ and TX wrote the manuscript under the guidance of NY; WZ and NY revised the manuscript; XZ revised the manuscript and made great contribution to the final manuscript. All authors read and approved the final manuscript.
State Key Laboratory of Complex Electromagnetic Environment Effects on Electronics and Information System, National University of Defense Technology. No. 109, Deya Road, Kaifu District, Changsha, 410073, China.
Correspondence to Weike Zhang.
The manuscript does not study human and animals.
The authors agree to publish the final manuscript.
Zhang, X., Zhang, W., Yuan, Y. et al. DOA estimation of spectrally overlapped LFM signals based on STFT and Hough transform. EURASIP J. Adv. Signal Process. 2019, 58 (2019) doi:10.1186/s13634-019-0654-0
DOA estimation
LFM signals
TF analysis
Hough transform
Single-source TF points

redpajama_set_name: RedPajamaCommonCrawl


The contest will be held at the Beach Point Club, 12:00 to 14:00 during the lunch before the Overnight Race. View the Contest Notice, at the Additional Info link above, to see examples and descriptions of the knots and spilces that will be graded this year.
Note: the contest was moved from the earlier venue during JSA Champs at AYC because of schedule conflicts.


Although transparency and accountability constitute declared proprieties on the political agenda of the Government of Georgia, the country still stands considerably behind in regards with access to historical archives as compared to other Eastern European states.
Rustavi 2 TV channel broadcasted an investigative documentary Studio Monitor and Radio Liberty produced. The documentary "Judges in the Government's Service" followed up on the government's attemptedconfiscation of Constanta Bank from its founders in 2011. It further hinted at alleged misconduct by the prosecutors and judges. CRRC-Georgia conducted a follow-up phone survey to find out whether and how the public viewed the documentary.
Rustavi 2 broadcasted an investigative film created by the Studio Monitor and Radio Liberty about a suspended investigation of the Prosecutor's Office of Georgia. The film How to subjugate a judge? focused on accusations against prosecutors and judges related to the abuse of power, seizure of real estate, and giving of land to private individuals. Phone survey was conducted to find out if people watched the film and what was their attitude towards the issues raised in it.
Identification of burials and remains of the victims of the Soviet-era terror is a demanding challenge for the post-Soviet countries. Many of these countries have started searching for such burial sites not at all recently, several mass burial sites have already been found and these countries have paid tribute to the repressed. There was no such precedent in Georgia as of yet, the search for burial sites and graves in the 1990s were largely in vain due to the destruction of archives and lack of information.
In 2018, the Georgian Government initiated a wide-scale reform of the investigative system with one of the key elements of the reform being separation of the investigative and prosecution functions.
Introduction of the electronic system for case distribution in Common Courts is one of the most important novelties introduced under the "Third Wave" of judicial reform. One year monitoring revealed the following significant challenges with regards to the full implementation of the new system.
Significant steps have been taken under the "Third Wave" of the judicial reform in terms of improving system for disciplinary liability of judges.
Over 20 journalists from leading Georgian media organizations met with members of the Permanent Parliamentary Council on Open Governance and its Consultative Group on March 16, 2019 to learn more about the openness related achievements of the Parliament of Georgia.


text:
Q: Extension Method with Generic Type How to create extension method for a generic type?
The below code returning error

Extension method can only be declared in non-generic, non-nested static class

Code:
public static class PagedList<T> where T : BaseEntity
{
    public static IEnumerable<T> ToPagedList(this IEnumerable<T> source, int pageNumber = 0, int pageSize = 5)
    {
        return source.Skip(pageNumber * pageSize).Take(pageSize);
    }
}

Any further implementation with this makes this work ?

A: Specify generic types directly on the method and make the class as the error says static and non-generic.
public static class PagedList
{
    public static IEnumerable<T> ToPagedList<T>(this IEnumerable<T> source,
        int pageNumber = 0, int pageSize = 5) where T : BaseEntity
    {
        return source.Skip(pageNumber * pageSize).Take(pageSize);
    }
}

A: You should listen the error message, you need to declare your extension method inside of a non-generic class.

redpajama_set_name: RedPajamaStackExchange


text:
#include <unistd.h>
#include <list>
#include <thread>
#include <deque>
#include <vector>

#include <grpc/support/alloc.h>
#include <grpc/support/log.h>
#include <grpc/support/host_port.h>
#include <grpc++/client_context.h>
#include <grpc++/create_channel.h>

#include "src/core/support/env.h"
#include "test/core/util/port.h"
#include "test/core/util/test_config.h"
#include "test/cpp/qps/driver.h"
#include "test/cpp/qps/histogram.h"
#include "test/cpp/qps/qps_worker.h"

using std::list;
using std::thread;
using std::unique_ptr;
using std::deque;
using std::vector;

namespace grpc {
namespace testing {
static deque<string> get_hosts(const string& name) {
  char* env = gpr_getenv(name.c_str());
  if (!env) return deque<string>();

  deque<string> out;
  char* p = env;
  for (;;) {
    char* comma = strchr(p, ',');
    if (comma) {
      out.emplace_back(p, comma);
      p = comma + 1;
    } else {
      out.emplace_back(p);
      gpr_free(env);
      return out;
    }
  }
}

// Namespace for classes and functions used only in RunScenario
// Using this rather than local definitions to workaround gcc-4.4 limitations
// regarding using templates without linkage
namespace runsc {

// ClientContext allocator
static ClientContext* AllocContext(list<ClientContext>* contexts) {
  contexts->emplace_back();
  return &contexts->back();
}

struct ServerData {
  unique_ptr<Worker::Stub> stub;
  unique_ptr<ClientReaderWriter<ServerArgs, ServerStatus>> stream;
};

struct ClientData {
  unique_ptr<Worker::Stub> stub;
  unique_ptr<ClientReaderWriter<ClientArgs, ClientStatus>> stream;
};
}  // namespace runsc

std::unique_ptr<ScenarioResult> RunScenario(
    const ClientConfig& initial_client_config, size_t num_clients,
    const ServerConfig& server_config, size_t num_servers, int warmup_seconds,
    int benchmark_seconds, int spawn_local_worker_count) {
  // ClientContext allocations (all are destroyed at scope exit)
  list<ClientContext> contexts;

  // To be added to the result, containing the final configuration used for
  // client and config (incluiding host, etc.)
  ClientConfig result_client_config;
  ServerConfig result_server_config;

  // Get client, server lists
  auto workers = get_hosts("QPS_WORKERS");
  ClientConfig client_config = initial_client_config;

  // Spawn some local workers if desired
  vector<unique_ptr<QpsWorker>> local_workers;
  for (int i = 0; i < abs(spawn_local_worker_count); i++) {
    // act as if we're a new test -- gets a good rng seed
    static bool called_init = false;
    if (!called_init) {
      char args_buf[100];
      strcpy(args_buf, "some-benchmark");
      char* args[] = {args_buf};
      grpc_test_init(1, args);
      called_init = true;
    }

    int driver_port = grpc_pick_unused_port_or_die();
    int benchmark_port = grpc_pick_unused_port_or_die();
    local_workers.emplace_back(new QpsWorker(driver_port, benchmark_port));
    char addr[256];
    sprintf(addr, "localhost:%d", driver_port);
    if (spawn_local_worker_count < 0) {
      workers.push_front(addr);
    } else {
      workers.push_back(addr);
    }
  }

  // TODO(ctiller): support running multiple configurations, and binpack
  // client/server pairs
  // to available workers
  GPR_ASSERT(workers.size() >= num_clients + num_servers);

  // Trim to just what we need
  workers.resize(num_clients + num_servers);

  // Start servers
  using runsc::ServerData;
  // servers is array rather than std::vector to avoid gcc-4.4 issues
  // where class contained in std::vector must have a copy constructor
  auto* servers = new ServerData[num_servers];
  for (size_t i = 0; i < num_servers; i++) {
    servers[i].stub = std::move(
        Worker::NewStub(CreateChannel(workers[i], InsecureCredentials())));
    ServerArgs args;
    result_server_config = server_config;
    result_server_config.set_host(workers[i]);
    *args.mutable_setup() = server_config;
    servers[i].stream =
        std::move(servers[i].stub->RunServer(runsc::AllocContext(&contexts)));
    GPR_ASSERT(servers[i].stream->Write(args));
    ServerStatus init_status;
    GPR_ASSERT(servers[i].stream->Read(&init_status));
    char* host;
    char* driver_port;
    char* cli_target;
    gpr_split_host_port(workers[i].c_str(), &host, &driver_port);
    gpr_join_host_port(&cli_target, host, init_status.port());
    client_config.add_server_targets(cli_target);
    gpr_free(host);
    gpr_free(driver_port);
    gpr_free(cli_target);
  }

  // Start clients
  using runsc::ClientData;
  // clients is array rather than std::vector to avoid gcc-4.4 issues
  // where class contained in std::vector must have a copy constructor
  auto* clients = new ClientData[num_clients];
  for (size_t i = 0; i < num_clients; i++) {
    clients[i].stub = std::move(Worker::NewStub(
        CreateChannel(workers[i + num_servers], InsecureCredentials())));
    ClientArgs args;
    result_client_config = client_config;
    result_client_config.set_host(workers[i + num_servers]);
    *args.mutable_setup() = client_config;
    clients[i].stream =
        std::move(clients[i].stub->RunTest(runsc::AllocContext(&contexts)));
    GPR_ASSERT(clients[i].stream->Write(args));
    ClientStatus init_status;
    GPR_ASSERT(clients[i].stream->Read(&init_status));
  }

  // Let everything warmup
  gpr_log(GPR_INFO, "Warming up");
  gpr_timespec start = gpr_now(GPR_CLOCK_REALTIME);
  gpr_sleep_until(
      gpr_time_add(start, gpr_time_from_seconds(warmup_seconds, GPR_TIMESPAN)));

  // Start a run
  gpr_log(GPR_INFO, "Starting");
  ServerArgs server_mark;
  server_mark.mutable_mark();
  ClientArgs client_mark;
  client_mark.mutable_mark();
  for (auto server = &servers[0]; server != &servers[num_servers]; server++) {
    GPR_ASSERT(server->stream->Write(server_mark));
  }
  for (auto client = &clients[0]; client != &clients[num_clients]; client++) {
    GPR_ASSERT(client->stream->Write(client_mark));
  }
  ServerStatus server_status;
  ClientStatus client_status;
  for (auto server = &servers[0]; server != &servers[num_servers]; server++) {
    GPR_ASSERT(server->stream->Read(&server_status));
  }
  for (auto client = &clients[0]; client != &clients[num_clients]; client++) {
    GPR_ASSERT(client->stream->Read(&client_status));
  }

  // Wait some time
  gpr_log(GPR_INFO, "Running");
  // Use gpr_sleep_until rather than this_thread::sleep_until to support
  // compilers that don't work with this_thread
  gpr_sleep_until(gpr_time_add(
      start, gpr_time_from_seconds(benchmark_seconds, GPR_TIMESPAN)));

  // Finish a run
  std::unique_ptr<ScenarioResult> result(new ScenarioResult);
  result->client_config = result_client_config;
  result->server_config = result_server_config;
  gpr_log(GPR_INFO, "Finishing");
  for (auto server = &servers[0]; server != &servers[num_servers]; server++) {
    GPR_ASSERT(server->stream->Write(server_mark));
  }
  for (auto client = &clients[0]; client != &clients[num_clients]; client++) {
    GPR_ASSERT(client->stream->Write(client_mark));
  }
  for (auto server = &servers[0]; server != &servers[num_servers]; server++) {
    GPR_ASSERT(server->stream->Read(&server_status));
    const auto& stats = server_status.stats();
    result->server_resources.emplace_back(
        stats.time_elapsed(), stats.time_user(), stats.time_system());
  }
  for (auto client = &clients[0]; client != &clients[num_clients]; client++) {
    GPR_ASSERT(client->stream->Read(&client_status));
    const auto& stats = client_status.stats();
    result->latencies.MergeProto(stats.latencies());
    result->client_resources.emplace_back(
        stats.time_elapsed(), stats.time_user(), stats.time_system());
  }

  for (auto client = &clients[0]; client != &clients[num_clients]; client++) {
    GPR_ASSERT(client->stream->WritesDone());
    GPR_ASSERT(client->stream->Finish().ok());
  }
  for (auto server = &servers[0]; server != &servers[num_servers]; server++) {
    GPR_ASSERT(server->stream->WritesDone());
    GPR_ASSERT(server->stream->Finish().ok());
  }
  delete[] clients;
  delete[] servers;
  return result;
}
}  // namespace testing
}  // namespace grpc

redpajama_set_name: RedPajamaGithub


text:
/*
 * File Name: BeanUtil.java

 * Description:
 * Author: Pi Chen
 * Create Date: 2016年9月9日
 */
package cn.edu.hdu.webbf.util;

import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;

/**
 *
 * spring bean相关工具类
 *
 * @author Pi Chen
 * @version webbf V1.0.0, 2016年9月9日
 * @see
 * @since webbf V1.0.0
 */
public class BeanUtil implements ApplicationContextAware
{
    private static ApplicationContext applicationContext;

    /**
     * 根据bean名字查找bean
     *
     * @param beanName
     * @return
     */
    public static Object getBean(String beanName)
    {
        return applicationContext.getBean(beanName);
    }
    /**
     * 根据bean名字和类型查找
     * @param beanName
     * @param clazs
     * @return
     */
    public static <T> T getBean(String beanName, Class<T> clazs)
    {
        return null == getBean(beanName) ? null : clazs.cast(getBean(beanName));
    }

    /**
     *
     * 得到applicationContext的引用
     *
     * @see org.springframework.context.ApplicationContextAware#setApplicationContext(org.springframework.context.ApplicationContext)
     * @param applicationContext
     * @throws BeansException
     */
    @Override
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException
    {
        BeanUtil.applicationContext = applicationContext;
    }

}


A guided tour of the Awamori manufacturing plant and sake brewery.
Road Station Kadena offers freshest produce as well as Okinawa dining experience.
Embrace your body, mind&soul with essential oils.
Just imagine an elegant large flower blooming right in the middle of the farm of sugar canes waving like ripple. Our original Beni-imo sweet potato tarts have started just right from here with the concept nationwide.
20 minute drive from Express Ishikawa I.C. / 70 minute from the airport.
First-award winning products in the food section at exhibition of the products of Okinawa nationwide.
We have been serving prime Ishigaki beef for 60 years at Makishi public market featuring Okinawa's brand Agu pork as well.
Visit the best shop for men's clothing brands made in Japan.
5 minute walk from Naha Mainplace department store.


text:
Techno Brain Ranked 2nd Fastest Growing Technology Company on the Deloitte Technology Africa Fast 50 2014
In newsroom
Techno Brain today announced that it ranked Number 2 on the Deloitte Technology Africa Fast 50 2014, a ranking of the 50 fastest growing technology companies in Africa. Rankings are based on percentage revenue growth over five years. Techno Brain grew 621 percent during this period.
Techno Brain's Group CEO, Manoj Shanker credits the company's "For Africa, By Africa, In Africa" approach to technology, and investments in human resource development, as the reasons behind the phenomenal growth rate of 621 percent over the past five years. He said, "We've always believed in Africa. We believe world class IT solutions can be created here by Africans, and we've shown it to the world now. That's the reason why we are able to deliver great value to our clients, uphold the highest standards of quality, and grow at this unbelievable pace."
He added, "The people of Techno Brain lie at the very foundation of its success. This victory is completely theirs. We will continue our focus on empowering people and nurturing young African talent. This recognition is another step towards achieving our goal of becoming the most recognized and most valued African IT brand in the world."
The Deloitte Technology Fast 50 Africa programme is the region's most objective industry-ranking to focus on the technology field, recognizing technology companies that have achieved the fastest rates of revenue growth in Africa during the past five years.
"Making the Deloitte Technology Fast 50 Africa ranking is a testament to Techno Brain's commitment to technology," said Kamal Ramsingh, Deloitte Africa Technology Leader and partner in charge of the Deloitte Technology Fast 50 Africa programme. He added, "With its 621 percent growth rate over five years, Techno Brain has proven that its leadership has the vision and determination to grow in difficult conditions."
2014DeloitteTechno Brain


If you are following a car, the driver is most likely to notice you if you position yourself behind them in the center of your lane. This lane position places you in the driver's rearview mirror. Most drivers check their rearview mirrors much more frequently than they check their side mirrors.
A cushion of space between their vehicle and other vehicles.
A good understanding of motorcycle laws.
Your first and best protection against collisions with other vehicles is simply to keep your distance from them. The only way to be sure you will have enough time to react to mistakes made by other drivers is to leave plenty of space between you and the vehicles around you. Wearing proper gear is also important when riding a motorcycle.
Is less effective than goggles.
A plastic, shatter-resistant face shield can help protect your whole face if you are involved in a crash. Goggles protect your eyes, but not the rest of your face. A windshield is not an adequate substitute for googles or a face shield.


text:
Why is high-speed Internet still poor in Chatham County? Our Chatham investigates 🔍
By Alexis Allston | November 28, 2018
More on Newsletter Archives
Subscribe to Newsletter Archives
"Connecting the curious across the county"
Why is high-speed internet still poor in Chatham County?
By: Ari Sen
Paul Worth, a realtor who lives south of Pittsboro, asks "Why is high-speed internet still poor in Chatham County?" He said he spends $60 a month for Windstream, which has promised speed upgrades for eight years but has failed to deliver.
To answer Worth's question, I decided to break it down into relevant sections to explore the issue of broadband internet access in Chatham. I also created a map of Chatham's broadband availability using the FCC's broadband development data from June 2017, which can be viewed below:
What constitutes high-speed? What is "broadband"? How fast should my download and upload speeds be?
The FCC defines "broadband" as any internet connection that achieves 25 Mbps download speeds and 3 Mbps upload speeds. The recommended download speed is much higher than the upload speed because the majority of internet tasks (loading web pages, streaming video, etc.) involve downloading. Certain tasks like Skype, FaceTime calls or sending large files via email require greater upload speeds.
Simple web tasks such as Google searches and email only require download speeds of about 1-5 Mbps, whereas more intensive tasks like streaming high definition video, playing online games and downloading very large files can require anywhere from 15 to more than 200 Mbps per task.
What is the problem with internet in Chatham County? How many choices do Chathamites have?
A survey conducted by the county in 2017 asked residents to rate their satisfaction with their internet in the county. Eighty-eight percent of residents who responded to the survey said they were unserved or unsatisfied with their current internet service.
Glenn Knox of the North Carolina Broadband Office told county government employees and representatives from area ISPs in a meeting last year that he has personally tested the connection speed in several Chatham County homes and found an average speed of 1 to 1.5 Mbps or less. Knox also said he tested one neighborhood which lost all of its internet service during heavy rain.
An FAQ page on the county's website says Chatham has "two cable providers, two DSL providers and a couple of broadband wireless providers."
The FCC data lists 20 internet service providers in the county, with speeds ranging from 2 Mbps satellite connections to 1 Gbps fiber from AT&T. According to data from the FCC, Hughes Network Systems provides the most coverage in the county, offering 25 Mbps down and 3 Mbps up. VSAT Systems LLC was the second largest, offering non-broadband speeds of 2 Mbps down and 1.3 Mbps up.
The FCC estimates that 73.4 percent of residents in Chatham County have access to broadband speeds. According to the same data, neighboring Orange County has 92.5 percent coverage. However, this data may be inaccurate because the FCC report relies on ISPs self-reporting their coverage and speeds, which may exclude a large number of providers who choose not to report.
Patrick Woodie, president of the N.C. Rural Center, also said that the FCC data counts an entire area as being served if only one house in that area is covered. The Rural Center did not respond to a request for more accurate data, but in the interview, Woodie encouraged rural residents to self-report their internet speeds to the N.C. Broadband Infrastructure Office by taking a speed test linked to on their website.
What impediments are there for developing broadband in rural areas?
In 2011, North Carolina passed House Bill 129 preventing towns and municipalities from providing their own internet service. At the time of the bill's passage four N.C. municipalities had government-provided internet services. Chatham's representative at the time, Joe Hackney, voted against the bill.
Woodie said the bill created some confusion about what municipalities could and could not do in regards to funding broadband. Under current law, towns and municipalities are allowed to fund or incentivize private sector internet providers however they wish, so long as they don't provide internet service themselves.
Last year, the state legislature considered a bill that was supposed to clarify the rules for municipalities and define broadband as part of infrastructure, freeing up funds that could be used to pay for broadband improvements. Chatham County Rep. Robert Reives voted in favor of the bill. The bill passed the House but died in Senate committee.
Woodie said the primary problem with providing internet to rural areas is that there aren't enough subscribers per square mile to justify a larger internet service provider such as AT&T, Verizon or Comcast investing in the necessary startup infrastructure for the area, especially when there are larger, more profitable areas nearby. The geography and terrain of these areas can also present issues for ISPs because they can cause fixed wireless line of sight interference and make the laying of fiber optic cable more difficult.
Even when changes do come to rural areas, residents can be slow to see the importance or may not be able to afford the updates, he said.
Woodie also said leaders were sometimes overly optimistic about the prospect of technological progress, which can lead them to become apathetic.
"A lot of people will say 'You don't need to worry about this, the advance in technology will solve the problem and eventually it will be everywhere.' We don't buy that argument," he said. "What we see in a lot of the research and a lot of the people who have looked really seriously at 5G technology, definitely it's a new technology and it has some benefits, but it's likely that rural communities will be the last to see the benefits of that."
What will it take to bring high-speed internet to the unserved areas in Chatham? What plans are already in place at the county and state level to do that?
County leaders are heavily invested in expanding broadband access in Chatham. In a presentation of Chatham's Capital Improvement Plan for 2020 through 2026, Interim County Manager Dan LaMontagne asked the county's leaders to fund improvements in broadband and technology for the coming years. LaMontagne said the county government is working with the school district on a proposal to lease fiber to serve the schools. The proposal says service would be scheduled to start on July 1, 2019 and may be used to enhance the broadband service for county residents.
Additionally, Open Broadband, an internet service provider that serves other rural areas in North Carolina, said it is "conducting feasibility studies and researching market needs" for Chatham County and are in discussion with the various towns in the county. The company says it provides residential and business customers with gigabit fiber and fixed wireless service for as low as $39 a month.
"There's probably no words that have been more often spoken than 'rural broadband' in the General Assembly in the last session," Woodie said.
State legislators just approved a budget that contains $10 million in grant money to bring more internet service providers to rural areas. The GREAT program, short for Growing Rural Economies with Access to Technology, would provide funds for internet service providers who want to expand in rural areas.
To receive the grant funds an internet service provider would have to provide a background with its experience and proposed project details, proof that the area is unserved and evidence of support from the community. An area is considered to be unserved if it's presently without access to broadband service offered by a wireline or fixed wireless provider. The applicant would then be graded on a point system based on the number of unserved households and businesses, the estimated cost per household and the minimum download and upload speeds. The grants are capped at $2 million per applicant and the applicant must agree to match between 35 and 55 percent of the awarded funds based on the number of points they were given. Providers must offer the service for at least five years, or be subject to loss of the awarded funds.
North Carolina General Assembly Speaker Tim Moore's office praised the program in a news release.
"Maximizing broadband capability in every region of North Carolina is essential to maintain our state's rapid economic growth," House Appropriations Chairman Rep. Dean Arp (R-Union) said in the press release.
"Broadband is as essential for economic growth as roads, water and sewer, and low-cost electricity. The GREAT program is an innovative step to help connect North Carolina communities, create jobs, and offer new opportunities in unserved parts of the state."
Woodie said between 80 and 90 people representing 40-50 different internet service providers interested in vying for the funding at the kickoff meeting hosted at the Rural Center last Thursday.
In August, N.C. Gov. Roy Cooper criticized members of the General Assembly for only funding half of his proposed $20 million for broadband expansion and cybersecurity in his opening remarks at the 18th North Carolina Digital Summit in Raleigh. Cooper said broadband is critical to close the "homework gap" — the inability or difficulty for some students to complete online assignments for school because of a lack of high-speed internet.
Why is high-speed internet so important? If I have broadband, why should I care?
Having faster internet isn't just helpful when you are trying to stream the latest season of Game of Thrones.
Multiple studies have found that higher internet speeds increase economic growth in the surrounding communities including improvements in household income, productivity and work flexibility. A 2013 study conducted by Ericsson, Arthur D. Little and the Chalmers University of Technology also found that increases in internet speed also improved access to healthcare and made energy use more efficient. A study conducted by Hudson Institute, a D.C. based conservative think tank, found that rural broadband companies contributed $24.1 billion to the economies of the states in which they operated in 2015 and supported 69,595 jobs.
In an interview, Patrick Woodie, President of the N.C. Rural Center, also stressed the importance of broadband, calling it the center's number one priority.
"We can't deliver healthcare to our rural citizens without the availability of broadband. We can't build our workforce development system and really take care of the educational needs of children or adults throughout our educational systems, without broadband. We can't start, grow and build a small business without broadband," Woodie said. "It's just foundational to really the economic future of our communities."
What other questions do you have about broadband in Chatham County? Let us know so we can continue to investigate this issue, and share Ari's story with fellow Chathamites that are concerned about slow broadband internet. Find his story on our website.
Chatham Park's way or the highway. Chatham Park is willing to contribute $9M for the development of Chatham Parkway, which will extend from 15-501 to US 64. After completion of the project, the North Carolina Department of Transportation would allocate $4.5M from the $9M back to Pittsboro for other projects to be used according to the Town's discretion. Chatham Park investors are requesting that the Town allocate the $4.5M to other projects in Chatham Park. Read reporter Chloe Arrojado's full notes from this week's Pittsboro Board of Commissioners meeting to learn more.
Also discussed at Monday's Board of Commissioners meeting was a pig named "Norman" who was running loose around town. Now, he's been caught and returned safely.
👩🏼🌾 Show out to support all things local this Sunday, Dec. 2 from 12 to 5 p.m. at the Pittsboro First Sunday Artisan Fair & Market and experience local music, food, and eclectic vendors.
🌍🎥 Eager to learn more about the industrial pollutants contaminating Pittsboro's drinking water supply? Next Tuesday, Dec. 4 at 6 p.m. the Haw River Assembly and Pittsboro Roadhouse invite the public to a free screening of The Devil We Know.
🎄🎊 Pack your best Christmas sweater and mark your calendar for the annual Siler City Christmas Parade Thursday, Dec. 7 at 7 p.m.
🎨 Spend your next couple of weekends supporting the Chatham County local art scene at the 2018 Chatham Studio Tour.
⭐⭐Looking to give back this holiday season? Visit Chatham Connecting and get connected with over 120 agencies serving Chatham residents that you can give your time to today.
Government Calendars
Chatham County boards and committees
Chatham County libraries
Town of Pittsboro government
Subscribe for more Chatham news blasts!
About Alexis Allston
Foodie + lover of craft beer. Fascinated by Chatham County growth and development. Have questions about Chatham County? Get in touch with me.
More by Alexis
You Asked, We Answered: What's the status of nuclear waste storage at Shearon Harris power plant? 
You Asked, We Answered: What's the status of nuclear waste storage at Shearon Harris power plant? 🏭 For this week's Curious Chatham story, we're heading to the power plant off of Shearon Harris Road.
Hello, Chathamites. Happy Friday!
Unregulated contaminants threaten Pittsboro's water supply 🚰
Unregulated contaminants threaten Pittsboro's water supply Pittsboro is trying to figure out the best way to cleanse its water of unregulated, potentially dangerous contaminants. View this email in your browser
Hello, Chathamites.
What is Chatham County doing to stop silt pollution from construction near Fearrington? 🌊
What is Chatham County doing to stop silt pollution from construction near Fearrington? Creekwood Creek and Beechmast pond are still suffering from high turbidity and increased water flow. View this email in your browser