Выбрать главу

She, in particular, had a long history of working with cops and bringing home big stories. Henry knew this full well, and his slap across the face only fueled her determination to nail this goddamned story she’d turned from a stale report of a sighting into a story in three dimensions. Now she needed to bring it home. Collect her prize.

Cindy took mental inventory of the Morales situation. She knew that Morales was in San Francisco, which was a jump on every other reporter in the world and also the FBI. She’d met Morales and knew enough about her to push her buttons. Admittedly, the button-pushing was a two-way street. The inflammatory and scary e-mailed threat from Morales was proof of that.

But, most important, this e-mail had been direct contact between the two of them. I MADE YOU CINDY.

If that wasn’t the first sentence in the lede paragraph of her upcoming career story, she didn’t know squat about journalism.

Cindy heard the buzz of her cell phone with an incoming text message. She grabbed it. Lindsay.

I’m in a meeting. Later.

She was about to reply when an old greenish Subaru wagon drove past her, heading north on Lake Street. It was almost as if she’d conjured up one of the cars she was looking for—and it was real and right in front of her.

The dusty-green Subaru Outback cruised through the intersection of Lake and 12th and seemed to slow as it passed Lindsay’s building. Then it continued on, its taillights receding up ahead, already too far away for Cindy to read the plate number.

She tossed her phone onto the passenger seat, strapped in, jerked the car into gear, pulled out into the lane, and jammed on the gas. Thirty seconds later, she was flying east, past blocks of multicolored Victorian houses, tailing the green all-wheel-drive vehicle that was heading toward the Presidio.

She could make out the silhouette of the driver through the Subaru’s rear window three cars ahead, but she wasn’t close enough to tell if the driver was male or female.

Was Mackie Morales driving that car?

Actually, Cindy had no idea.

Chapter 71

Conklin and I were taking up space in the tech bullpen at Clapper’s forensics lab, peering over the bony shoulders and fuchsia hair of Bo Kellner, a sharp young criminalist who specialized in digital forensics.

The three frames I’d snipped from several days of surveillance footage shot at the Hayes Valley Chuck’s Prime restaurant were getting this kid all excited. Well, the frames were exciting, but Kellner was already highly enthused about his new facial-recognition program called Hunting Wolf.

He’d just installed it yesterday, and he was already being given a real-life opportunity to run Hunting Wolf through its paces. He was as excited as if he’d won the Instant Scratch-off Lotto.

I only half listened to Kellner talk about his program because I was juggling anxiety on two fronts: the upcoming ransom deadline from our friendly mechanical belly bomber and my constant thrumming, live-wire fear for the lives of Yuki and Brady.

Conklin, however, appeared to be in the present, and he wanted to get to know Bo Kellner’s new baby.

“What do you know about facial recognition?” Kellner asked Conklin.

“Pretty much what’s been produced in this lab and what I’ve seen on cop TV.”

Kellner laughed. “Okay, then. So let’s start with this.”

He inputted one of the faces from the grainy footage I’d sent to the lab twenty-four hours ago. It was a three-quarter view of a thin white man with a full beard who’d been caught on camera ordering from the menu hanging over the counter.

Kellner was saying, “If this was actual footage, Hunting Wolf could read his lips and tell you what he ordered,” when my phone chirped. I fished it out of my jacket pocket and glanced at the caller ID.

It was Cindy.

I texted her that I couldn’t talk but I’d call her later. Thinking, yes, after I had the belly bomber in my theoretical crosshairs.

Right now Belly Bomber was job one.

Kellner was saying, “So now Hunting Wolf is scanning this gray-and-white image, using algorithms that look for light and shadow and specific features, relaying that information as a face print—a unique numerical code.”

“I’m more or less following you,” Conklin said.

“Look,” Kellner said. “See the flickering at the top of the frame? The program is scanning pretty fast, but when it reaches the center of the face, the rapid movement will slow down as it tracks the features.”

Kellner rotated the face from three-quarters to a frontal view. He said, “Now I’m going to mess with the picture a little. I’m going to delete the beard and fill in the lower half of the face with what we call male physiological norms.”

Kellner moved the cursor around, twiddled with the image, and within seconds the guy with the beard was clean-shaven with a nice jawline.

Kellner said, “So now, I enter this clean face into the database and give him a name: Kellner1SFPD. We’ve gone from facial tracking to facial recognition.”

The software jiggled, locked in, and then flashed through millions of faces already stored in the database, ranging beyond the known criminal database to any matching image that had ever been downloaded onto the Internet, at the fantastic speed of thirty-six million faces a second.

But for all the cutting-edge pizzazz, there was no match.

I said, “So he’s not a known criminal, and he’s not known, period.”

“That’s right,” said Kellner. “If his image was on Facebook or any database, Hunting Wolf would send up a flare. This guy has a very low, almost nonexistent profile.”

I leaned in and said, “If you input the second face, it could match to the first. It’s still just a cold hit, but maybe we’d get a better image of this guy, right?”

“Correct,” said Kellner. “Exactly right.”

The second photo from my series was of a skinny guy wearing a dark leather jacket, knit hat, a brushy moustache, and a small soul patch.

Kellner imported it, and technological wizardry recommenced. Images flashed on the screen, stopped on the first skinny guy, now known as Kellner1SFPD, and flashed “100% MATCH.”

Kellner said, “Let’s go for a triple play.”

Skinny man number three wore a hoodie that threw a shadow over his eyes.

The mouth on number three looked different from the first two, and he had a bulge in his cheek that looked like he had food in his mouth. Kellner explained, “Could be chewing gum. That’s a time-tested method of fooling ID software. Even smiling can throw off the search function. That’s why you don’t smile for a passport ID. But don’t worry. Hunting Wolf is smarter than the guy chewing gum and wearing a hoodie.

“Watch Hunting Wolf hunt.”

Chapter 72

As I watched the computer screen, the software digested the new input at some unimaginable speed, and when it stopped, I was looking at a composite of our three skinny guys without any facial fur.

Kellner’s program then did a global recognition search, and when no lights blinked and no bells rang, he pushed back his chair and looked up at us.

“I don’t know who he is, but this is a pretty good representation of what your man looks like.”

I asked Kellner to get up and let me sit close to the monitor, which he did. I stared into the eyes of the composite image, and I swore that face looked familiar to me.

Was that because I recognized him from watching the facial recognition process? Or did I recognize the actual guy?

I knew my brain was fried from viewing too many miles of gray-and-white surveillance footage, but still, pieces and parts of the man’s face matched a man I’d seen but didn’t know. Then I pictured him in action.

I recalled a barely registered image of a guy like this one stepping down from a Chuck’s refrigerated transport van. He’d been wearing a dark leather jacket and a dark scarf around his neck. No, not a scarf. It was a gray hoodie. He had opened the cargo doors, his back to the camera, then, head lowered, he’d carried a stack of white cartons to the back door at Chuck’s Hayes Valley location.