Your EEG Is Blurry. The Laplacian Fixes That.
The Blurriest Photograph You've Ever Trusted
Here's something that might bother you once you know it. Every EEG recording you've ever seen, every brainwave visualization, every topographic map with those colorful blobs of red and blue, is blurry. Not a little blurry. Profoundly, fundamentally blurry.
When a patch of neurons fires beneath one electrode on your scalp, that signal doesn't politely stay put. It radiates outward through brain tissue, passes through cerebrospinal fluid, pushes through the skull (which has roughly 80 times the electrical resistance of the brain itself), and finally reaches your scalp. By the time it arrives at the electrode, the signal has spread across centimeters of scalp surface. A source that's maybe two square centimeters inside your cortex produces a detectable smear across 10 or more centimeters of scalp.
You know what this is like? It's like taking a photograph through frosted glass. You can see the shapes. You can tell something bright is happening over here and something dim is happening over there. But the details? Gone.
This is the fundamental spatial resolution problem of EEG. And researchers have been living with it since Hans Berger recorded the first human EEG in 1929.
But here's where it gets good. There's a mathematical operation that acts like scraping the frost off the glass. It doesn't give you a perfect photograph, but it gives you something dramatically sharper than what you started with. It's called the surface Laplacian, and once you understand what it does and why it works, you'll never look at raw EEG the same way again.
The Problem: Volume Conduction Is Ruining Your Data
To understand why the Laplacian matters, you need to understand the enemy: volume conduction.
Every electrical source inside your brain creates a current that flows through the surrounding tissue. This current doesn't follow neat, straight paths. It spreads out through the conductive medium of the brain, the CSF, and eventually hits the skull. The skull is the real villain here. It's a poor conductor surrounded by better conductors on both sides, so electrical currents hitting the skull spread laterally, like water hitting a flat stone.
The practical consequence is devastating for spatial precision. Two distinct sources, one under electrode C3 and another under electrode C4, can produce overlapping voltage patterns on the scalp that make them look like a single, broad source centered between the two. The skull's smearing effect literally blends together signals that your brain was keeping separate.
This isn't just a theoretical annoyance. Volume conduction creates real problems for anyone working with EEG data:
- Coherence inflation. Two distant brain regions can appear to be synchronized simply because the same smeared signal shows up at both electrodes. You think you've found a functional connection. In reality, you've found volume conduction.
- Poor source discrimination. Activity from the motor cortex, somatosensory cortex, and frontal cortex can bleed into the same electrodes, making it hard to isolate which region is doing what.
- Misleading topographies. Those pretty topographic maps overestimate the spatial extent of brain activation. A focal source looks diffuse. A bilateral source can look midline.
For decades, the standard approach was to shrug and accept it. EEG has great temporal resolution and bad spatial resolution. That was the tradeoff. Use fMRI if you want spatial detail.
But some researchers didn't accept it. And the tool they built to fight back is elegant, powerful, and, honestly, underused.
The Surface Laplacian: A Spatial Derivative That Changes Everything
The surface Laplacian is the second spatial derivative of the voltage distribution across the scalp.
If that sentence made your eyes glaze over, hold on. The math is simpler than it sounds, and the intuition behind it is beautiful.
Think about what a derivative tells you. The first derivative of a function tells you how fast the function is changing. In the spatial context of EEG, the first spatial derivative of voltage tells you the voltage gradient, how quickly the voltage is changing as you move across the scalp surface.
The second spatial derivative tells you something different. It tells you the rate of change of the rate of change. In EEG terms, it answers: is the voltage at this point higher or lower than the average voltage at nearby points? Is it a local peak or a local valley?
Here's the intuition. Imagine a calm lake. You drop a stone into it. A circular wave ripples outward. At the center, where the stone hit, the water is displaced the most. As you move away from the center, the disturbance gets smaller. If you computed the surface Laplacian of the water height at every point, the result would be strongly negative at the center (a local dip compared to its neighbors) and near zero everywhere else. The Laplacian finds the point of impact.
Now map that onto EEG. Your brain has a focal source of electrical activity beneath one electrode. Volume conduction smears that activity across the scalp, so the raw EEG shows a broad, gentle voltage hill. The surface Laplacian looks at each point on the scalp and asks: is this point more positive or more negative than its immediate neighbors? At the peak of the hill (directly above the source), the answer is yes, it's more positive. Away from the peak, the answer is no, it's about the same as its neighbors. The Laplacian carves away the broad, smeared component and reveals the focal peak.
That is why the Laplacian sharpens EEG. It is a spatial high-pass filter. It lets through the sharp, local features of the voltage distribution while suppressing the broad, smooth features created by volume conduction.
The surface Laplacian of the scalp potential is proportional to the radial current density flowing through the skull directly beneath each electrode. In physical terms, it estimates the current source density (CSD), the amount of current entering or leaving the skull at each point. This is why Laplacian-transformed EEG is sometimes called CSD-transformed EEG. When you compute the Laplacian, you're not just filtering the data. You're estimating a physically meaningful quantity: how much current is flowing radially at each electrode location.
What the Laplacian Actually Computes
Let's get concrete. The surface Laplacian of a voltage field V at a point on the scalp is defined as:
Laplacian(V) = d2V/dx2 + d2V/dy2
where x and y are the two spatial dimensions of the scalp surface. In practice, the scalp isn't flat, so the computation uses spherical or realistic head geometry, but the principle is identical: you're computing how the voltage at a point differs from the voltage in its local neighborhood.
There are two primary methods for computing this:
Method 1: Finite Differences (Nearest-Neighbor)
The simplest approach. For each electrode, you subtract the average voltage of its nearest spatial neighbors from the electrode's own voltage:
Laplacian(i) = V(i) - (1/N) * sum of V(neighbors)
where N is the number of neighbors. This is computationally trivial and works with any channel count. The result is approximate but effective. It's the method most practical for low-density montages.
Method 2: Spherical Spline Interpolation
The more sophisticated approach, developed by Perrin, Pernier, Bertrand, and Echallier in 1989. This method fits a smooth spherical spline function to the voltage distribution across all electrodes, then computes the analytical Laplacian of that spline surface. It produces more accurate results, especially with higher channel counts, because it considers the global voltage pattern rather than just immediate neighbors.
The choice between these methods depends on your electrode count and your tolerance for computational complexity. Here's a comparison:
| Feature | Finite Difference | Spherical Spline |
|---|---|---|
| Minimum channels | 4-8 | 16+ |
| Computation speed | Near-instant | Fast (matrix operations) |
| Accuracy with 8 channels | Moderate | Better (but still limited) |
| Accuracy with 64+ channels | Good | Excellent |
| Sensitivity to noise | Higher | Lower (smoothing built in) |
| Implementation difficulty | Trivial | Moderate (requires spline fitting) |
| Best use case | Real-time BCI, low-density | Research analysis, high-density |
What the Laplacian Does to Your Data (Visually and Practically)
When you apply the surface Laplacian to a multichannel EEG recording, several things happen.
Topographies get sharper. The broad, blobby voltage maps that characterize raw scalp EEG become tighter and more focal. A raw topography might show a smooth gradient across the entire left hemisphere. The Laplacian version shows a tight peak over the motor cortex and much less activity everywhere else. You're seeing a closer approximation of what the cortex beneath each electrode is actually doing.
Coherence artifacts disappear. This is one of the biggest practical benefits. In raw EEG, if you compute the coherence or correlation between two electrodes, you get inflated values because volume conduction leaks the same signal into both channels. After Laplacian transformation, the shared, smeared component is removed, and the coherence you measure is much more likely to reflect genuine functional connectivity between brain regions. Studies have shown that Laplacian-transformed EEG coherence more closely matches connectivity patterns observed with fMRI.
Power spectra change. Because the Laplacian suppresses broadly distributed activity, the spectral content of the signal shifts. Alpha rhythms (8-13 Hz), which often have broad topographic distributions, may decrease in amplitude. Localized sensorimotor rhythms and gamma activity, which tend to be more focal, may become relatively more prominent. This isn't the Laplacian "adding" anything. It's revealing local spectral content that was previously masked by volume-conducted global activity.
The reference becomes irrelevant. Raw EEG is always recorded relative to a reference electrode, and the choice of reference (linked earlobes, average, Cz, mastoid) affects the data in ways that can be surprisingly dramatic. The surface Laplacian is reference-free. The second spatial derivative of the voltage field is the same regardless of what constant you add to all channels. This eliminates one of the most annoying methodological variables in EEG research.

The "I Had No Idea" Moment: How Much Volume Conduction Is Actually in Your Data
Here's the fact that stopped me in my tracks when I first encountered it. In a typical 64-channel EEG recording, estimates suggest that 60 to 80% of the correlation between nearby electrode pairs is attributable to volume conduction, not genuine neural coupling.
Read that again. More than half of what looks like "brain connectivity" in raw EEG is just the skull smearing the same signal across multiple electrodes. When people publish studies about "EEG coherence" between regions without correcting for volume conduction, they might be reporting on the electrical properties of bone as much as the functional architecture of the brain.
Hjorth recognized this in 1975. Bertrand Hjorth, a Swedish engineer, published a paper proposing what he called the "source derivation," a method of transforming EEG using the Laplacian to estimate the current sources on the scalp surface. He showed that this transform dramatically reduced the correlation between nearby channels, revealing that much of what had been interpreted as neural coupling was artifact.
Fifty years later, plenty of EEG studies still don't apply the Laplacian. It's one of those tools that everyone in the field knows about but many people skip, either because they don't understand it well enough or because they worry about the assumptions involved. That's a missed opportunity. The Laplacian is one of the simplest, most effective preprocessing steps you can apply to EEG data, and it requires no head model, no MRI, and no source localization assumptions.
Applying the Laplacian to 8-Channel Data
Now let's get practical. If you're working with the Neurosity Crown or any 8-channel EEG system, can you actually use the surface Laplacian?
Yes. With caveats.
The Crown's 8 electrodes sit at positions CP3, C3, F5, PO3, PO4, F6, C4, and CP4. These positions span frontal, central, and parieto-occipital regions across both hemispheres. For the finite difference Laplacian, each electrode needs at least 2 to 3 spatial neighbors. With 8 electrodes in a roughly symmetric bilateral layout, the central electrodes (C3, C4) have the most neighbors, and the frontal and occipital electrodes have fewer.
Here's what works and what doesn't:
| Application | Feasibility with 8 Channels | Notes |
|---|---|---|
| Reducing volume conduction between hemispheres | Good | Clear left-right separation with bilateral electrodes |
| Sharpening motor cortex activity (C3/C4) | Good | C3 and C4 have the most neighbors in this montage |
| Coherence analysis between regions | Moderate | Laplacian coherence is more trustworthy than raw coherence |
| Precise focal topography | Limited | 8 electrodes cannot resolve fine spatial detail |
| Detecting deep sources (thalamus, etc.) | Poor | Laplacian emphasizes superficial sources; deep sources are attenuated |
| Real-time BCI spatial filtering | Good | Finite difference Laplacian is fast enough for real-time processing |
The critical insight is that even with 8 channels, the Laplacian meaningfully reduces the volume conduction problem. You won't get the sharp, focal topographies that a 64-channel Laplacian produces, but you will get better spatial selectivity than raw EEG. For BCI applications, where you care about classifying activity from specific regions (left motor cortex vs. right motor cortex, for instance), even a coarse Laplacian can improve classification accuracy.
Implementation in Python with the Neurosity Crown
Here's how you'd implement a nearest-neighbor Laplacian on Crown data. First, stream raw EEG data using BrainFlow or the Neurosity Python SDK. Then define the neighbor relationships based on the Crown's electrode layout:
For the Crown's 8 electrode positions (CP3, C3, F5, PO3, PO4, F6, C4, CP4), reasonable nearest-neighbor assignments are: C3 neighbors with CP3, F5, PO3. C4 neighbors with CP4, F6, PO4. CP3 neighbors with C3 and PO3. CP4 neighbors with C4 and PO4. F5 neighbors with C3. F6 neighbors with C4. PO3 neighbors with C3 and CP3. PO4 neighbors with C4 and CP4. The central electrodes have more neighbors, so their Laplacian estimates are more accurate. Edge electrodes (F5, F6) have fewer neighbors, producing noisier estimates.
With the neighbor map defined, the computation for each time point is straightforward: subtract the average of each electrode's neighbors from the electrode's own voltage. You can do this with a simple matrix multiplication, which makes it trivially fast for real-time applications.
For the spherical spline approach on 8 channels, MNE-Python's compute_current_source_density function works, though you should be aware that spline fitting with so few electrodes relies more heavily on the smoothness assumption. The result is usable but less constrained than with higher channel counts.
Implementation in JavaScript with the Neurosity SDK
For JavaScript developers using the Neurosity SDK, the approach is similar. Subscribe to raw brainwave data using neurosity.brainwaves("raw"), which gives you 256Hz data from all 8 channels. Apply the finite difference Laplacian as a real-time transform by maintaining the neighbor map as an adjacency matrix and computing the difference at each sample. The computation is a few multiplications and subtractions per channel per sample, fast enough to run in a browser without any perceptible delay.
When NOT to Use the Laplacian
The Laplacian isn't a magic wand. There are situations where it can hurt more than it helps.
When you care about deep sources. The Laplacian is a spatial high-pass filter. It emphasizes local, superficial cortical activity and suppresses broadly distributed patterns. Many deep brain sources (thalamic generators, hippocampal rhythms) produce broad, smooth scalp distributions. The Laplacian attenuates these signals. If you're interested in thalamo-cortical interactions or deep source activity, the Laplacian will work against you.
When your signal quality is poor. Because the Laplacian involves taking differences between channels, it amplifies uncorrelated noise. If one channel has bad contact impedance or excessive artifact, the Laplacian will spread that noise into neighboring channels. Always check signal quality before applying the Laplacian. With the Crown, you can monitor signal quality via the SDK's signalQuality stream and exclude or interpolate bad channels before computing the transform.
When you have very few electrodes with poor spatial coverage. The Laplacian needs at least a few neighbors per electrode to produce a meaningful estimate. If your electrodes are clustered in one region with no surrounding neighbors, the transform becomes unreliable. The Crown's bilateral layout spanning frontal to parieto-occipital regions avoids this problem for most channels, but the edge electrodes (F5, F6) have limited neighbors.
When your analysis depends on absolute voltage amplitudes. The Laplacian changes the physical units of your data from microvolts to microvolts per square centimeter (or similar, depending on normalization). Comparisons of absolute amplitude between Laplacian-transformed and raw EEG are not meaningful. If your analysis requires absolute voltage values, the Laplacian is the wrong tool.
The Laplacian vs Other Spatial Filters: Which Is Better?
The surface Laplacian isn't the only spatial filter available for EEG. Here's how it compares to the alternatives:
| Method | What It Does | Pros | Cons |
|---|---|---|---|
| Surface Laplacian | Second spatial derivative of voltage | Reference-free, no head model needed, improves spatial resolution, fast | Emphasizes superficial sources, amplifies noise, needs spatial neighbors |
| Average Reference | Subtracts mean of all channels | Simple, reduces common-mode noise | Not truly reference-free, does not address volume conduction |
| Common Average Reference (CAR) | Subtracts weighted average of all channels | Better than single reference | Assumes noise is equal across channels, which is often false |
| Common Spatial Pattern (CSP) | Data-driven filter maximizing class separation | Optimal for 2-class BCI, adapts to individual data | Requires labeled training data, can overfit with few trials |
| Independent Component Analysis (independent component analysis) | Separates statistically independent sources | Can isolate artifacts and source components | Computationally expensive, subjective component selection, needs many channels |
| Source Localization (LORETA, etc.) | Estimates 3D brain source distribution | Best spatial resolution, models actual brain anatomy | Needs head model (ideally MRI), computationally intensive, needs 32+ channels |
The Laplacian occupies a sweet spot. It's more powerful than simple re-referencing, much simpler than full source localization, doesn't require training data like CSP, and doesn't require head models or MRI scans. For developers building real-time BCIs with consumer EEG hardware, it's often the best trade-off between spatial improvement and computational simplicity.
Why BCI Developers Should Care
If you're building a brain-computer interface, spatial filtering isn't an academic luxury. It directly affects classification accuracy.
Consider motor imagery, one of the most common BCI paradigms. When a user imagines moving their left hand, the motor cortex in the right hemisphere produces a characteristic desynchronization in the mu rhythm (8-12 Hz) over electrode C4. When they imagine moving their right hand, the same pattern appears over C3. A BCI classifier needs to distinguish these two patterns.
In raw EEG, the volume conduction problem means that C3 and C4 both contain a mixture of left-hemisphere and right-hemisphere activity. The signal-to-noise ratio for the lateralized component is reduced. The classifier has to work harder.
Apply the surface Laplacian first, and the picture changes. Each electrode's signal becomes more reflective of the cortical activity directly beneath it. The lateralized mu desynchronization becomes cleaner. The classifier's job gets easier. Multiple studies have shown that Laplacian preprocessing improves motor imagery BCI accuracy by 5 to 15 percentage points, which can be the difference between a BCI that barely works and one that feels responsive.
With the Neurosity Crown, the C3 and C4 electrodes are well-positioned for motor imagery, and they have enough spatial neighbors (CP3/F5 for C3, CP4/F6 for C4) to produce reasonable Laplacian estimates. If you're building a motor imagery BCI with the Crown, the finite difference Laplacian should be one of the first preprocessing steps in your pipeline.
A Brief History: From Hjorth to Modern CSD
The story of the surface Laplacian in EEG has a few key milestones worth knowing.
1975: Hjorth's source derivation. Bertrand Hjorth publishes "An On-Line Transformation of EEG Scalp Potentials into Orthogonal Source Derivations." He proposes using the Laplacian to estimate current sources on the scalp surface and demonstrates that it dramatically reduces inter-channel correlations. The paper is ahead of its time. Most EEG labs in 1975 have 8 to 16 channels and analog equipment. The idea sits mostly dormant for over a decade.
1989: Perrin and colleagues introduce spherical splines. Perrin, Pernier, Bertrand, and Echallier publish a method for computing the surface Laplacian using spherical spline interpolation. This is a major advance because it provides a principled mathematical framework that doesn't depend on the specific electrode montage. The method works with any electrode layout and produces smooth, well-behaved Laplacian estimates.
1991: Nunez and colleagues formalize CSD. Paul Nunez publishes extensive work connecting the surface Laplacian to current source density. He shows that the Laplacian of the scalp potential is proportional to the radial component of current density at the skull surface, giving the mathematical operation a clear physical interpretation.
2001 to present: Widespread adoption (slowly). As high-density EEG becomes more common and computational power increases, the Laplacian moves from a niche technique to a standard preprocessing option in tools like EEGLAB and MNE-Python. But adoption is uneven. Many BCI and clinical EEG studies still work with raw scalp potentials.
2020: Kayser and Tenke's CSD toolbox. The freely available CSD toolbox makes spherical spline Laplacian computation accessible to any researcher working in MATLAB. Similar functionality becomes available in MNE-Python. The barrier to entry drops to essentially zero.
Putting It All Together: A Practical Preprocessing Pipeline
For developers working with the Neurosity Crown or similar consumer EEG devices, here's a recommended pipeline that incorporates the Laplacian:
-
Stream raw data. Use the Neurosity SDK (JavaScript) or BrainFlow (Python) to access 256Hz raw EEG from all 8 channels.
-
Check signal quality. Monitor electrode impedance and signal quality. Flag or interpolate channels with poor contact. The Laplacian will amplify noise from bad channels, so this step matters.
-
Bandpass filter. Apply a bandpass filter (typically 1-45 Hz for general use, or narrower for specific bands). This removes DC drift and high-frequency noise before the spatial filtering step.
-
Apply the surface Laplacian. Use the finite difference method for real-time applications or the spherical spline method for offline analysis. Subtract each electrode's neighbor-average from its own value.
-
Extract features. Compute power spectral density, band power, coherence, or time-domain features on the Laplacian-transformed data. These features will have better spatial specificity than features computed on raw EEG.
-
Classify or visualize. Feed the features into your BCI classifier or display them in your application. The improved spatial resolution translates directly to better classification accuracy and more meaningful visualizations.
This pipeline adds negligible computational cost. The Laplacian step is a few arithmetic operations per channel per sample. On modern hardware, it runs in microseconds.
The Deeper Point: Every Layer of Processing Matters
There's a reason spatial filtering doesn't get the attention it deserves. It's not glamorous. It doesn't involve neural networks or large language models or any of the technologies that dominate today's conversations about AI and brain data. It's a preprocessing step. It happens before the interesting part.
But here's what experienced EEG researchers know: the quality of your preprocessing determines the ceiling of everything that comes after. A perfectly tuned classifier cannot extract a signal that was destroyed by volume conduction during preprocessing. A beautiful neural network cannot learn spatial patterns that were smeared beyond recognition before the data reached the model.
The surface Laplacian is one of those tools that raises the ceiling. It gives you cleaner data to work with, more meaningful features to extract, and more trustworthy results to interpret. It's been mathematically proven for five decades and implemented in every major EEG software package. The only reason it's not universal is that people don't know about it or don't understand it well enough to trust it.
Now you understand it. The next question is what you'll build with sharper data.
Your brain's electrical activity is already producing signals with remarkable spatial structure. The skull blurs them. The Laplacian un-blurs them. And with 8 channels, an open SDK, and a few lines of code, you can start working with spatially filtered brain data today. What happens next is up to you.

